Commit Graph

600 Commits

Author SHA1 Message Date
arvidn 964031c070 factor out readwritev to a free function, to allow unit testing of it 2015-11-19 17:58:55 -05:00
arvidn cec6748e0c remove the concept of slots, and just talk about pieces (since we don't do compact allocation anymore). Remove the section about compact allocation 2015-11-19 01:38:04 -05:00
arvidn fb2f2731cf fix support for incomplete reads/writes from disk 2015-11-14 00:21:03 -05:00
arvidn ced0f74bf8 minor moving around of code 2015-11-06 00:38:42 -05:00
arvidn e31433d952 flush and close the partfile when releasing files in default storage 2015-10-24 15:35:42 -04:00
arvidn a2ea8b32db fix more warnings 2015-09-06 22:55:41 -04:00
arvidn 17c5759829 disable warning for unused command line argument and fix warnings. remove redundant travis build config. use new preprocessor on clang to avoid warnings 2015-09-06 22:55:41 -04:00
arvidn bd177a857f make tailequeue a template, introduce type safety, remove old-style casts 2015-08-19 15:22:05 +02:00
arvidn 9a0092c120 fix some warnings 2015-08-16 12:17:23 -04:00
arvidn 16bb2de6ed fix some warnings 2015-08-13 23:52:25 -04:00
arvidn a81ca2391b fix some warnings 2015-08-10 20:03:24 -04:00
Alden Torres 5866bb7974 Indentation. 2015-08-03 18:16:43 -04:00
Alden Torres cd8a4d2511 Moved TORRENT_DISK_STATS to default_storage with the option of enable/disable at runtime. 2015-08-03 18:16:43 -04:00
arvidn e0c3d28321 fix some warnings 2015-08-02 15:55:05 -04:00
arvidn 655a3ae019 fix some warnings 2015-08-01 23:57:11 -04:00
arvidn 41533205be drop support for boost 1.35 and fix some more references to the asio namespace 2015-06-06 02:10:53 -04:00
Arvid Norberg d43f7b56a2 update copyright year 2015-06-03 05:18:48 +00:00
Arvid Norberg 051ca6b22c fix warnings 2015-05-18 05:32:18 +00:00
Arvid Norberg 2fff222235 silence some warnings on msvc 2015-04-27 02:21:12 +00:00
Arvid Norberg f0336017d1 fix gcc warnings and missing header files in makefiles 2015-04-26 00:51:44 +00:00
Arvid Norberg 3951377d95 fix include paths for warning push and pop headers 2015-04-21 01:16:28 +00:00
Arvid Norberg 4d15f1410f fix warnings, some clean-up and todo comments 2015-04-20 04:52:49 +00:00
Arvid Norberg 21751347bc more warnings fixes and cleanup 2015-04-19 06:28:21 +00:00
Arvid Norberg 408232cfc8 raise warning level. fix a few of them. filter out warnings from boost 2015-04-18 02:33:39 +00:00
Arvid Norberg 8ac5a32548 improve deprecation macros. increase default warning level. fix deprecation warnings while building libtorrent itself (gcc and clang) 2015-04-17 01:49:49 +00:00
Arvid Norberg ccc7e45406 landed mutable torrents branch in trunk 2015-03-21 00:12:40 +00:00
Arvid Norberg 794de25212 moved escape_string.hpp into the aux_ directory. moved out the 3 public hex functions into its own public header, hex.hpp 2015-03-14 23:10:20 +00:00
Arvid Norberg 6c1df7eb55 landed the bdecode branch in master. lazy_bdecode/lazy_entry is now being replaced by bdecode/bdecode_node 2015-03-12 05:20:12 +00:00
Arvid Norberg c1dc982f4f deprecate the ptime type and related time types. just use boost::chrono / std::chrono 2015-03-12 04:34:54 +00:00
Arvid Norberg 10333221bc attempt at fixing file permission issues on windows 2015-03-09 06:09:50 +00:00
Arvid Norberg 89055c4c7a some more optimizations on loading torrents 2015-02-18 03:32:49 +00:00
Arvid Norberg c4a294e88a deprecate file_base feature in file_storage/torrent_info 2015-02-17 04:53:49 +00:00
Arvid Norberg 40980df545 extend storage unit test to cover iovec operations 2015-02-15 07:31:35 +00:00
Arvid Norberg 9172874b5c fix storage error (recently introduced) where the mapped_files object would not be updated when renaming files that did not exist on disk 2015-01-13 18:28:06 +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 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 1ed1963f29 remove size_type typedef in favor of boost::int64_t 2014-12-03 04:32:50 +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 d287ce9c46 fix issue when hash checking files resulting in a short read 2014-10-12 23:49:51 +00:00
Arvid Norberg 649d7646fb test build fix. another boost.chrono overflow issue fixed 2014-09-02 08:01:09 +00:00
Arvid Norberg c60ceacb71 switch over to use boost.atomic instead of home-built one 2014-08-01 07:32:54 +00:00
Arvid Norberg 374380667c make default_storage a bit more robust 2014-07-10 01:59:35 +00:00
Arvid Norberg 7351389ce8 land libtorrent_aio branch in trunk 2014-07-06 19:18:00 +00:00
Arvid Norberg 6c6fe4dfe2 merged fixes of warnings from RC_1_0 2014-07-04 23:40:31 +00:00
Arvid Norberg 6043e14131 remove pch.hpp 2014-06-28 23:45:46 +00:00
Arvid Norberg 3f4eba1bdb web seed and storage fixes 2014-06-21 06:58:39 +00:00
Arvid Norberg 3e5ab73127 fix windows build 2014-06-09 04:08:41 +00:00
Arvid Norberg dd2e605796 don't use full allocation on network drives (on windows) 2014-06-07 02:57:24 +00:00
Arvid Norberg 4deafb5e29 add workaround for GCC bug in MingW (broken support for PVOID64) and improve resiliency of storage 2014-05-23 02:09:27 +00:00
Arvid Norberg e225259481 fix some msvc warnings 2014-05-10 03:23:05 +00:00
Arvid Norberg b643962bfe merged fixes from RC_0_16 2014-03-06 10:06:41 +00:00
Arvid Norberg a0a41b6c5e merged file priority fix from RC_0_16 and keep the disk thread's file priorities up to date 2014-02-28 10:19:29 +00:00
Arvid Norberg a943fec777 update copyright 2014-02-23 19:12:25 +00:00
Arvid Norberg 0398dfe498 merged storage allocation mode fix from RC_0_16 2014-02-07 08:58:52 +00:00
Arvid Norberg 05aa06460d fix merge error 2014-01-26 02:40:09 +00:00
Arvid Norberg ce2805a258 merged lt_tex fix from RC_0_16 2014-01-26 01:17:58 +00:00
Arvid Norberg e0644ce8f5 invariant check macro fixes 2014-01-21 19:26:09 +00:00
Arvid Norberg 702b68ecc4 clean up assert related defines and debuf-only fields less error-prone. fix missing initialization in file_pool caused by mistake in defines under which the debug field was initialized 2014-01-19 19:45:50 +00:00
Arvid Norberg 5b46be916b merged storage fix from RC_0_16 2013-12-30 02:50:29 +00:00
Arvid Norberg 4e6b1cfbfb update copyright 2013-12-25 17:07:16 +00:00
Arvid Norberg ea0aa72cce fix resume data bug introduced when deprecating the iterators from file_storage 2013-11-07 06:54:56 +00:00
Arvid Norberg aef04aca5b merged move_storage fix from RC_0_16 2013-10-28 05:07:55 +00:00
Arvid Norberg 1a0d798ac9 fixed typo in file_storage API deprecation 2013-08-17 01:35:39 +00:00
Arvid Norberg 3bd53f88ef fix build with internal_file_entry being deprecated without deprecated functions 2013-08-12 07:30:57 +00:00
Arvid Norberg 8f3723cdef support renaming files to absolute paths 2013-06-09 22:30:02 +00:00
Arvid Norberg 0a09eeca9f merged changes from RC_0_16 2013-05-11 22:57:08 +00:00
Arvid Norberg bdf0e1764b merged fixes from RC_0_16 2013-05-11 22:00:54 +00:00
Arvid Norberg cf7a2a098e fix move_storage fail_if_exist logic. First check to see if the root folder exists, as an early exit 2013-05-11 21:41:42 +00:00
Arvid Norberg 90a2509d68 fix bug in recent move_storage patch 2013-05-10 02:18:14 +00:00
Arvid Norberg 982a14c2e9 extend move_storage functionality to have more flexible behavior 2013-05-09 02:50:16 +00:00
Arvid Norberg 6ea6bf9e92 revert mistake 2013-04-01 08:37:21 +00:00
Arvid Norberg 1ce4b2b531 fix error handling when directories in the target are missing 2013-04-01 06:47:44 +00:00
Arvid Norberg 431efc6157 merge storage fix from RC_0_16 2013-03-03 04:47:19 +00:00
Arvid Norberg a0caa0f4b2 disable invariant_check functions when invariant checks are disabled 2013-02-25 04:13:46 +00:00
Arvid Norberg 3599b130c0 expand unit tests 2013-02-24 10:02:26 +00:00
Arvid Norberg e45c71dd30 merged sparse file fix from RC_0_16 2013-02-16 08:26:55 +00:00
Arvid Norberg d63b82bb78 merged rename_file fix from RC_0_16 2013-02-09 21:50:22 +00:00
Arvid Norberg 0977848cca optimize file lookups in storage 2013-01-21 02:46:42 +00:00
Arvid Norberg f1b8582a95 add gen_todo.py script. include todo.html and mark up some todos in the code with priority 2013-01-20 23:21:53 +00:00
Arvid Norberg 38d7e58177 merge checking fix from RC_0_16 2013-01-06 04:53:26 +00:00
Arvid Norberg 6d7e9e4521 remove some iostream dependencies 2012-10-12 04:50:34 +00:00
Arvid Norberg 3bf462f858 merged resume data fix from RC_0_16 2012-10-07 20:25:15 +00:00
Arvid Norberg bff648a89e update copyright dates and add tool to do so 2012-10-02 03:16:33 +00:00
Arvid Norberg f403b5f3c8 fix move_storage bugs 2012-06-29 23:35:11 +00:00
Arvid Norberg bc851d317f work on test_web_seed 2012-03-22 01:48:17 +00:00
Arvid Norberg 4d49d0f20d windows storage fixes 2011-11-13 04:12:56 +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 ca9122861a merged unaligned write fix over from RC_0_15 2011-11-02 04:45:22 +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 bc1e47a486 solaris fixes 2011-09-04 23:29:47 +00:00
Arvid Norberg 51ed06304e deprecated compact storage allocation 2011-08-22 00:51:14 +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 40fb16b703 fix for pad-files 2011-07-12 08:53:20 +00:00
Arvid Norberg 639590eff8 fixed typo in physical_offset pad-file fix 2011-07-03 21:09:42 +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 d6c8184381 support locking files 2011-06-09 06:08:24 +00:00
Arvid Norberg 7bea10a698 fixed unbuffered disk read/write 2011-06-07 08:18:51 +00:00
Arvid Norberg a73960aa5a support release asserts 2011-05-08 09:04:59 +00:00
Arvid Norberg 56364cc9c7 disable hash checks fix 2011-05-05 04:02:10 +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 5811e9eef8 small hint_read issue 2011-04-26 08:08:54 +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 29ce1a3704 improve file_too_short error message 2011-04-25 06:02:19 +00:00
Arvid Norberg caed433cc7 make it possible to derive from default_storage class 2011-04-16 22:58:11 +00:00
Arvid Norberg 1b6227ad31 report disk read-back when verifying piece hashes 2011-03-20 01:19:14 +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 f7576714bf fixed some build warnings 2011-02-24 18:47:02 +00:00
Arvid Norberg 47822c27fe fixed typo in storage 2011-02-24 18:01:32 +00:00
Arvid Norberg 97a40a45cd fully support unbuffered I/O 2011-02-22 02:53:26 +00:00
Arvid Norberg 141ada013f fixed a whole bunch of build warnings on gcc and msvc, along with some fixes discovered along the way 2011-02-21 05:24:41 +00:00
Arvid Norberg c4c1773ceb fixed some warnings 2011-02-15 10:05:25 +00:00
Arvid Norberg 8bb71da401 disk write queue watermark fix 2011-02-13 22:27:02 +00:00
Arvid Norberg 8e8b0495e1 don't leak non-fatal errors out of storage::initialize 2011-02-13 01:16:06 +00:00
Arvid Norberg d35b0a8a7b one more storage initialization fix 2011-02-12 22:48:21 +00:00
Arvid Norberg 9915d72e4c fixed typo in storage allocation. would exit early on non fatal error 2011-02-12 22:11:00 +00:00
Arvid Norberg 7f91b8174e create missing directories on the fly 2011-02-12 22:00:08 +00:00
Arvid Norberg 1088c5aa6f fixed typo in storage 2011-02-09 08:20:51 +00:00
Arvid Norberg ed8779a338 added option to not recheck on missing or incomplete resume data 2011-02-06 00:50:12 +00:00
Arvid Norberg 3e4634097d mapped file resume data fixes 2011-01-31 00:47:09 +00:00
Arvid Norberg c6c7ed16f6 added TODO comments 2011-01-20 06:17:27 +00:00
Arvid Norberg 99d2c4eea8 storage initialize fix 2011-01-19 09:19:26 +00:00
Arvid Norberg 557ddca693 fixed bug when remapping files 2011-01-19 08:42:17 +00:00
Arvid Norberg 59a7ee73dc fixed file allocation bug when existing files are larger than they're supposed to be 2011-01-19 07:39:55 +00:00
Arvid Norberg d301890d78 fixed edge case of pad file support 2010-12-13 16:47:12 +00:00
Arvid Norberg 2e69366b02 reverted part of the file_storage API to match the previous one more closly 2010-11-29 05:44:29 +00:00
Arvid Norberg e5f980d80d merged uTP branch into trunk (yay) 2010-11-29 01:33:05 +00:00
Arvid Norberg 894db973e8 optimized memory usage of torrent_info and file_storage 2010-11-24 23:49:22 +00:00
Arvid Norberg 2353cc8ec2 assert we don't ask for physical offset of a pad file 2010-11-14 08:17:27 +00:00
Arvid Norberg 0773644a4e fixed web seed test to work with invariant checks turned on and fixed error reporting when receiving an unexpected responce for http seeds 2010-10-30 19:45:50 +00:00
Arvid Norberg 4b6a73417d fixed error reporting issue in disk I/O thread 2010-10-18 07:38:14 +00:00
Arvid Norberg 554e329f57 remove udp_socket mutex 2010-09-25 21:39:27 +00:00
Arvid Norberg b7b542f587 optimized file_pool lookups and string handling 2010-08-23 08:48:02 +00:00
Arvid Norberg 2736a3b7ff fixed file checking bug 2010-08-23 05:51:12 +00:00
Arvid Norberg 7c5ca7712a fixed bug on windows when verifying resume data for a torrent where one of its directories had been removed 2010-07-24 07:06:45 +00:00
Arvid Norberg beafa4f3e0 add some more potential error codes that should cause the torrent check to skip the file 2010-07-15 01:32:59 +00:00
Arvid Norberg 97afe3fca8 added option to set file priorities when adding torrents 2010-07-15 01:14:36 +00:00
Arvid Norberg dce2edb6cc fixed vs 2010 build 2010-04-30 19:08:16 +00:00
Arvid Norberg 62eef91338 added setting to ignore file modification time when loading resume files 2010-04-11 21:02:43 +00:00
Arvid Norberg 247bd9256d fixed bug in fallocate usage and avoid trying to allocate and truncate files that don't need it to not update their modification time for no good reason 2010-03-06 20:09:18 +00:00
Arvid Norberg 1b2798970c support O_NOATIME on linux and use it by default 2010-02-02 19:44:52 +00:00
Arvid Norberg 5b747f58f7 add guided read cache and update tuning docs 2010-01-31 19:14:00 +00:00
Arvid Norberg da89e1b2ee indentation fix 2010-01-17 07:39:07 +00:00
Arvid Norberg c9b594fde1 support sending suggest messages based on what's in the read cache. support 'explicit read cache' 2010-01-15 16:45:42 +00:00
Arvid Norberg d498c129ab clear sparse flag on files that complete on windows 2010-01-09 18:40:05 +00:00
Arvid Norberg ac8f64f5fe fixed deadlock in piece_manager 2009-12-25 16:02:45 +00:00
Arvid Norberg df2f2570c2 factor out page size function and make aligned allocator configurable to use posix_memalign and memalign 2009-12-09 01:55:30 +00:00
Arvid Norberg 1f5859d31f error_code fix. added is_error_code_enum template specialization and using the abbreviated syntax to build error_codes 2009-11-29 07:06:38 +00:00
Arvid Norberg 1d6d11bf0c storage fix 2009-11-28 08:58:07 +00:00
Arvid Norberg 6343fe6a6d optimized header dependencies to lower build time 2009-11-23 08:38:50 +00:00