Commit Graph

331 Commits

Author SHA1 Message Date
Arvid Norberg f49c6d2d52 fix non UNC paths build 2012-03-09 00:14:30 +00:00
Arvid Norberg 14287b8a7b use UNC paths on windows by default 2012-02-23 06:46:23 +00:00
Arvid Norberg 679abf2e57 this time, actually remove the encrypted torrent (AES-256 encrypted peer connections) 2012-02-09 06:47:22 +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 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 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 f5d6f885e3 fixed bug in next_announce_in 2011-06-25 19:29:06 +00:00
Arvid Norberg 69bbee8932 fix assert in torrent_info 2011-06-25 17:24:26 +00:00
Arvid Norberg f6f516bed0 fix file_storage copy constructor (would break python bindings) 2011-06-06 07:47:29 +00:00
Arvid Norberg 4a914852cc support torrents whose name is empty 2011-06-03 08:48:33 +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 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 6663f527da fixed error handling in torrent_info constructor 2011-01-19 10:07:51 +00:00
Arvid Norberg 83da84452f fixed bug in remap_files 2011-01-17 08:02:23 +00:00
Arvid Norberg 67d1c57b5e bumped some limits in dump_torrent 2010-12-11 22:00:20 +00:00
Arvid Norberg 10003f952f fix build issue 2010-12-09 05:39:28 +00:00
Arvid Norberg 3563ef98df fixed build error 2010-11-30 03:20:35 +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 894db973e8 optimized memory usage of torrent_info and file_storage 2010-11-24 23:49:22 +00:00
Arvid Norberg 62f8cac2b9 fixed typo 2010-11-15 05:15:43 +00:00
Arvid Norberg 8c404cc5c1 optimized memory usage of torrent_info 2010-11-15 05:10:36 +00:00
Arvid Norberg a4f533ce55 improve the bencoded printer 2010-11-09 18:13:22 +00:00
Arvid Norberg 618f4dcc01 fix assertion failure with debug iterators when loading empty torrent files 2010-11-02 02:24:57 +00:00
Arvid Norberg fc1b44b560 improve error reporting of lazy_bdecode to use error_code 2010-10-28 04:01:59 +00:00
Arvid Norberg 72322dbc10 allow extending web seeds with extra headers and custom authorization schemese 2010-10-10 18:43:58 +00:00
Arvid Norberg d590938856 fixed announce issue 2010-09-11 04:16:29 +00:00
Arvid Norberg a17f4e4e71 fixed bug where event=completed would not be sent if it violated the min-interval 2010-09-01 03:14:12 +00:00
Arvid Norberg f70fbb45c0 optimized struct layout of torrent_info. removed boost.date_type types from public interface (replaced by time_t) 2010-08-21 22:10:16 +00:00
Arvid Norberg dce2edb6cc fixed vs 2010 build 2010-04-30 19:08:16 +00:00
Arvid Norberg b4abe6677d support for sha1 file-hashes 2010-03-27 15:51:30 +00:00
Arvid Norberg c050b22d8f optimized memory usage for torrent objects 2010-02-14 01:39:55 +00:00
Arvid Norberg ef48784cbd fix trimming of announce urls 2010-02-12 17:11:37 +00:00
Arvid Norberg 0fc90b5655 fixed support for min-interval on tracker failures 2009-12-21 09:47:32 +00:00
Arvid Norberg bd881ac154 fixed more link issues on windows. examples build with shared linking on windows 2009-12-02 17:46:25 +00:00
Arvid Norberg 1e654220fa added support for min_interval 2009-12-02 04:05:24 +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 5d1bfc497a added torrent_info::remap_files() 2009-11-27 22:15:34 +00:00
Arvid Norberg e1aa90daab header dependency fixes 2009-11-26 21:05:57 +00:00
Arvid Norberg 7db5996abc header dependency fix 2009-11-26 18:31:27 +00:00
Arvid Norberg a80b2b0fce fixed torrent_info copy constructor. restricted copying of lazy_entry. Fixed build. added pascal_string type to be used with lazy_entry (trunk only) 2009-11-26 06:54:52 +00:00
Arvid Norberg 18e5d67967 protect file_priority functions from being called on torrents without metadata 2009-11-26 00:09:49 +00:00
Arvid Norberg a5586d154d more header dependency optimizations 2009-11-25 06:55:34 +00:00
Arvid Norberg 6343fe6a6d optimized header dependencies to lower build time 2009-11-23 08:38:50 +00:00
Arvid Norberg 8fdeeb0497 don't replace invalid path characters in non-path strings 2009-11-13 02:50:07 +00:00
Arvid Norberg e1080a81c6 fixed bug in error handling when parsing torrent files 2009-10-26 20:30:45 +00:00
Arvid Norberg c418165e07 replaced boost.filesystem with custom functions (improves efficiency and drops unnecessary dependencies and improves libtorrent portability) 2009-10-26 01:29:39 +00:00
Arvid Norberg fbccefb70b improved invalid filename character replacement 2009-09-25 15:08:28 +00:00
Arvid Norberg 3d9c8f1b2d cleaned up usage of MAX_PATH and related macros 2009-09-10 03:54:10 +00:00
Arvid Norberg 31d63ee5be replaces invalid filename characters with . and fixed the http_parser unit test in 0.14 2009-09-09 17:56:25 +00:00
Arvid Norberg b673a1bab1 i2p fix 2009-09-06 17:03:11 +00:00
Arvid Norberg 6d01cb475c msvc build fixes 2009-09-06 00:57:01 +00:00
Arvid Norberg 1f5a722b01 improved sun studio support (it seems to lack a lot of stl) 2009-08-30 07:38:52 +00:00
Arvid Norberg 45fd696bc6 added I2P support 2009-08-20 03:19:12 +00:00
Arvid Norberg 507fc50911 replace_extension is only available in boost 1.37+ 2009-08-17 20:26:41 +00:00
Arvid Norberg ece98a8ef6 * added support for storing symbolic links in .torrent files 2009-07-01 08:35:45 +00:00
Arvid Norberg 10eb3fa00f handle torrents with duplicate filenames 2009-06-26 16:20:57 +00:00
Arvid Norberg 5de60fad78 added support for preserving modification time of files in torrents 2009-06-23 02:50:41 +00:00
Arvid Norberg ad1e575a6e trim tracker urls and renamed isprint to is_print 2009-06-23 01:53:47 +00:00
Arvid Norberg 5ce7aed078 encodes urls in torrent files that needs to be encoded 2009-06-19 18:18:49 +00:00
Arvid Norberg eb2203abf5 fixed torrent file path vulnerability 2009-05-28 07:25:09 +00:00
Arvid Norberg aba5b2e9d0 dropped some iostream dependencies 2009-04-04 09:52:25 +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 84a513bffb initial support for merkle hash tree torrents 2009-03-13 06:09:39 +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 3187bd9905 moved some errors over to use error_code 2009-02-13 19:01:02 +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 3cdf9c87a8 fixed build errors on Solaris 2009-01-27 08:24:48 +00:00
Arvid Norberg 8030454c96 fixes problem whith lexical_cast being locale dependent 2009-01-27 06:17:55 +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 eea890de11 added support for generating torrent files with padding files in them 2009-01-11 10:32:57 +00:00
Arvid Norberg 7592ad4aee updated disk IO to support unbuffered files 2009-01-11 02:02:34 +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 e5d3755afb added support for http seeds (BEP 17) 2008-12-30 03:54:07 +00:00
Arvid Norberg 6f80fdf9f7 fix bug when renaming files and using the web_peer_connection. Deprecated non-const file_storage access in torrent_info 2008-12-24 20:07:34 +00:00
Arvid Norberg e4ed68918b fixed bug when torrent file have announce-list but no valid trackers. #444 2008-12-16 01:26:35 +00:00
Arvid Norberg 58a3f6e4a0 added wpath overload for torrent_info constructor 2008-12-01 07:52:59 +00:00
Arvid Norberg d1a2b774e6 changed how trackers are handled. Implements #297 by setting session_settings::announce_to_all_trackers to true 2008-11-29 08:38:40 +00:00
Arvid Norberg acbdbfc1ef added tracker exchange (tex) extension 2008-11-27 20:51:59 +00:00
Arvid Norberg 4fed0cd542 comment about file name truncation 2008-11-17 18:31:42 +00:00
Arvid Norberg 30c0525ed5 truncates filenames that are too long (#412) 2008-11-17 08:01:35 +00:00
Arvid Norberg 535f668c5d simplified the file interface 2008-10-19 05:03:17 +00:00
Arvid Norberg 0368e444af fix to torrent_info constructor to not try to access 0 pointer when loading a 0 size torrent file 2008-10-17 01:46:06 +00:00
Arvid Norberg 7f0bfa37b9 fix for loading 0-size torrent files. Fixes #383 2008-10-05 04:52:01 +00:00
Arvid Norberg 7157516eba fixed boost-compatibility 2008-10-04 06:56:51 +00:00
Arvid Norberg d4c206841b added support for bitcomet padding files. simplified storage read/write code. 2008-10-03 05:49:41 +00:00
Arvid Norberg 9bae670ac7 fix build with boost-1.36 2008-08-16 21:11:27 +00:00
Arvid Norberg cbf8e6f3b1 introduced TORRENT_NO_DEPRECATE, to disable deprecated functions. Made example not use deprecated functions. Documented magnet uri related functions. 2008-08-03 15:14:08 +00:00
Arvid Norberg 3cb1369385 improved error reporting of file errors (uses boost.system's error_code). Now permission errors are properly reported when checking files 2008-07-17 23:41:46 +00:00
Arvid Norberg 40d7e2ce75 moved load_file into torrent_info.cpp to make it available on windows too. Fixed the exception free path in torrent_info 2008-07-01 11:00:00 +00:00
Arvid Norberg 9c84908bb9 switched resume data parsing over to use lazy_bdecode. Improves memory allocation performance, especially noticable when heap allocations are expensive. Makes it more practical to run with malloc debug. Changed resume data interface to take a vector as opposed to a parsed structure 2008-06-30 23:14:31 +00:00
Arvid Norberg ce99813b48 fix binary file mode in torrent_info. Fixes #354 2008-06-27 09:41:08 +00:00
cg25 ff3e80c42f Removed svn:executable property from {c,h}pp files in branches/RC_0_13 and
trunk.
2008-06-25 14:15:21 +00:00
Arvid Norberg 3910fe78de separated file_storage from torrent_info and create_torrent 2008-05-28 08:44:40 +00:00
Arvid Norberg 669debaa42 64-bit issue fix 2008-05-28 07:48:46 +00:00
Arvid Norberg dbb625a910 torrent_info fixes. make_torrent now builds 2008-05-20 09:49:40 +00:00
Arvid Norberg c53eabd90c fixed typo 2008-05-15 21:48:11 +00:00
Arvid Norberg df2389219a fixed typo in torrent_info 2008-05-15 17:42:28 +00:00
Arvid Norberg 16a8aa88e8 ignore invalid entries in 'announce-list' instead of aborting 2008-05-14 19:44:36 +00:00
Arvid Norberg 8ed949c4d5 factored out torrent creation functionality from torrent_info into create_torrent. Modified torrent_info to use lazy_bdecoder for increased performance 2008-05-14 05:29:42 +00:00
Arvid Norberg 149fa28586 added constructor to torrent_info that loads a file directly 2008-05-12 06:35:24 +00:00
Arvid Norberg cc5dc24ca1 put the private flag in the right place. Fixes #303 2008-04-09 08:10:44 +00:00
Arvid Norberg 35fd9aec61 msvc build fixes and warning fixes 2008-04-05 21:18:27 +00:00
Arvid Norberg a25c25b02a fixed windows build and removed msvc warnings 2008-02-25 10:28:53 +00:00
Arvid Norberg e6e051e7c5 improves logic to handle slightly broken .torrent files and added tests 2008-01-06 07:35:32 +00:00
Arvid Norberg eb8ea0f461 made torrent_info not rely on exception support 2007-12-28 20:11:10 +00:00
Arvid Norberg 769d8aefe2 first version of 'part file' support. Can currently only be set when starting torrent 2007-11-25 10:47:05 +00:00
Arvid Norberg 966800cd5b replaced the assert macro to TORRENT_ASSERT instead of hi-jacking assert. 2007-10-05 00:30:00 +00:00
Arvid Norberg 020902ac4c fixes problem with torrents that have a name.utf-8 entry 2007-09-24 18:51:04 +00:00
Arvid Norberg aff2869bed fixed recent change to torrent_info.cpp 2007-08-27 16:12:42 +00:00
Arvid Norberg 09429d1871 removed some duplicate data from torrent_info 2007-08-27 07:23:57 +00:00
Arvid Norberg 2b0197e810 initial fix to enable mapping files in torrents to other files on disk. see torrent_info::remap_files 2007-08-25 18:26:43 +00:00
Arvid Norberg 6c50adabfc updated piece_picker fix and added another invariant check to policy 2007-08-21 01:17:42 +00:00
Arvid Norberg 3b8670626a merged back async_io branch into trunk 2007-06-10 20:46:09 +00:00
Arvid Norberg a5847956e1 most of the metadata is now freed when a torrent becomes a seed. #44 2007-05-09 22:54:26 +00:00
Arvid Norberg 0863bc1aa6 removed the dependency on the compiled boost.date_time library 2007-04-10 09:11:32 +00:00
Arvid Norberg d88ffcc0e4 removed some more unecessary boost.date_time dependencies 2007-04-10 07:52:58 +00:00
Arvid Norberg 306d015924 added a timer abstraction and replaced the use of boost.date_time. the timers used now are QueryPerformanceCounter on windows, mach_absolute_time on darwin and currently falls back on boost.date_time on other platforms. This has the advantage of being a monotonic clock, and also slightly more efficient 2007-04-04 22:27:36 +00:00
Arvid Norberg 8957b64c04 prepared for precompiled headers support. fixed issue where storage didn't lock the session properly. fixed typo in natpmp.cpp 2007-03-17 17:15:16 +00:00
Arvid Norberg 3fc73cb219 added a web seed test (requires manual environment setup for web server). fixed bug in torrent_info where file offsets could be left uninitialized. Fixed bug in torrent which would cause a crash in case a torrent without any trackers would be aborted. 2007-02-20 01:42:12 +00:00
Arvid Norberg 889ad70cee fixes for metadata-less torrents, and fixes for peer requests 2007-02-15 03:03:50 +00:00
Arvid Norberg e35fc5c4be refactored extensions and added a plugin interface. fixed file.cpp for windows 2006-11-14 00:08:16 +00:00
Arvid Norberg c84e96898b added workaround for incorrectly encoded paths in torrent files 2006-10-12 23:51:10 +00:00
Arvid Norberg 7e9da2a261 fixed indentation 2006-10-11 22:07:07 +00:00
Arvid Norberg 5e254ffea6 fixede bug appearing when loading a torrent containing a piece length of 0 2006-09-23 21:43:26 +00:00
Arvid Norberg 4edfaa0493 fixed private=0 torrent parsing 2006-09-12 00:48:01 +00:00
Arvid Norberg 056558576e fixed overflow bug in file_progress() and bug in the parsing of dht nodes from torrent files 2006-08-27 18:38:30 +00:00
Arvid Norberg 2daaa9f8d2 fixed bug in allocate_resources, made the refresh timers more accurate and tries to even out the load bu not refreshing more than one bucket at a time 2006-08-06 16:36:00 +00:00
Arvid Norberg 5ef57265bf first version with DHT support. Limited pipelining used by url-seeds. Fixed one configuration problem on FreeBSD. 2006-08-01 15:27:08 +00:00
Arvid Norberg 00df2b5bc3 added build notes for vs.net 2005, removed old code from ip_filter.cpp, fixed problem where the stats could become incorrect in case of very high cpu load, added asserts in storage::read() to make sure one is not trying to read out of bounds. 2006-07-26 10:21:25 +00:00
Arvid Norberg 903e11e458 moved the asio headers into the include directory, to have them installed when libtorrent is installed. improved the complexity of torrent_info::map_file(), It's now O(1). 2006-06-17 22:04:25 +00:00
Arvid Norberg 41810b1166 merged back the asio development branch 2006-04-25 21:04:48 +00:00
Arvid Norberg 2d70a9b5bf some more steps in the direction of getting it to build on vc7 2006-01-10 00:38:52 +00:00
Arvid Norberg e810ebaf1f fixed some bind-statements to build on vc7 2006-01-06 21:36:17 +00:00
Arvid Norberg f63702c964 optimized session::add_torrent() by putting more info in torrent_info, to make it possible to reproduce the exact info section from an torrent_info object. The result is that the .torrent file is only parsed once. 2005-10-16 16:58:41 +00:00
Arvid Norberg 7a4750d540 added another assert in policy 2005-09-28 18:32:05 +00:00
Arvid Norberg 8c8a375168 changed back the entry to use std::map for dictionaries 2005-09-11 09:58:34 +00:00
Arvid Norberg 6a09806ad4 *** empty log message *** 2005-08-17 22:59:21 +00:00
Arvid Norberg cc1d4dfdde prefers name.utf-8 and path.utf-8 if they exists 2005-08-17 01:35:37 +00:00
Arvid Norberg 713dad845d fixed parsing of torrent files with empty announce-list 2005-08-11 02:01:03 +00:00
Arvid Norberg 080da58903 *** empty log message *** 2005-07-10 10:42:00 +00:00
Arvid Norberg e003bb8ad5 added ip filters and fixed torrent_info::create_torrent() 2005-07-06 00:58:23 +00:00
Arvid Norberg 7814b03370 fixed issue with creating torrents with a single file in a directory and some security issues with paths in torrents 2005-05-11 23:03:12 +00:00
Arvid Norberg 4839e509b7 fixed potential security problem where files with absolute paths were allowed in torrents 2005-02-24 06:51:59 +00:00
Arvid Norberg 705e40fda6 *** empty log message *** 2004-11-21 10:49:02 +00:00
Arvid Norberg b29e378f22 *** empty log message *** 2004-11-18 22:33:50 +00:00
spyhole 0659b267cf crash bug fixed 2004-11-16 13:38:14 +00:00
Arvid Norberg df281f81ae *** empty log message *** 2004-10-31 23:16:08 +00:00
Arvid Norberg a34130b446 *** empty log message *** 2004-10-29 13:21:09 +00:00
Arvid Norberg c48f64c2ec *** empty log message *** 2004-10-16 01:10:42 +00:00
Arvid Norberg a8e8c715e8 *** empty log message *** 2004-10-14 01:17:04 +00:00
Arvid Norberg f324cc925e *** empty log message *** 2004-10-13 15:36:44 +00:00
Arvid Norberg 1fbb33f6d2 *** empty log message *** 2004-10-11 21:50:04 +00:00
Arvid Norberg a997a43d30 *** empty log message *** 2004-10-10 00:42:48 +00:00
Arvid Norberg 492565b979 *** empty log message *** 2004-09-12 10:12:16 +00:00
Arvid Norberg bd296f3657 *** empty log message *** 2004-07-24 11:54:17 +00:00
Arvid Norberg 43997c41fd *** empty log message *** 2004-06-28 20:23:42 +00:00
Arvid Norberg f70bd8ac97 added a metadata extension. i.e. torrent-less downloads 2004-06-13 23:30:42 +00:00
Arvid Norberg a9b3c6dd41 *** empty log message *** 2004-03-27 22:02:31 +00:00
Arvid Norberg 870b4aeaab *** empty log message *** 2004-03-23 22:58:18 +00:00
Arvid Norberg bfd918e90c *** empty log message *** 2004-03-17 12:55:26 +00:00
Arvid Norberg 06ad07cea7 *** empty log message *** 2004-03-17 12:14:44 +00:00
Magnus Jonsson 1d9b74ffee *** empty log message *** 2004-03-07 20:50:56 +00:00
Arvid Norberg 3dac95965e *** empty log message *** 2004-03-05 12:04:47 +00:00
Arvid Norberg 258d691dae *** empty log message *** 2004-03-03 13:47:12 +00:00
Arvid Norberg fc74e19224 *** empty log message *** 2004-01-26 10:29:00 +00:00
Arvid Norberg 45ed3662fa *** empty log message *** 2004-01-25 21:37:19 +00:00
Arvid Norberg 0dbbc18186 removed most warnings on msvc.
reimplemented piece_manager::check_pieces to take care of all possible cases of the storage state.
2004-01-25 18:18:36 +00:00
Magnus Jonsson bb36fa8e24 *** empty log message *** 2004-01-25 02:59:27 +00:00
Arvid Norberg 19a4dad706 *** empty log message *** 2004-01-24 17:14:03 +00:00
Magnus Jonsson e1f433f5db *** empty log message *** 2004-01-16 03:58:24 +00:00
Arvid Norberg 85ed5e1593 added first file abstraction interface. 2004-01-15 23:57:11 +00:00
Arvid Norberg 95026395f3 *** empty log message *** 2004-01-02 20:46:24 +00:00
Arvid Norberg f21d6a0f7f there are still some serious issues with storage when having large torrents (about 700 meg and up at least) 2003-12-01 05:01:40 +00:00
Arvid Norberg 94919f9806 *** empty log message *** 2003-11-28 17:29:27 +00:00
Arvid Norberg 086dbd40fe added support for comments and creation date in torrent files.
fixed bug in url_handler.
2003-11-20 19:58:29 +00:00
Arvid Norberg d7f92afea3 *** empty log message *** 2003-10-29 23:28:09 +00:00
Arvid Norberg 1bd0a8234a *** empty log message *** 2003-10-28 01:20:50 +00:00
Arvid Norberg d2f7be1608 *** empty log message *** 2003-10-26 03:18:17 +00:00
Arvid Norberg ec34b1bfdb Initial commit of 'new' libtorrent.
The Jamfile is broken and will hopefully be fixed soon.
2003-10-22 23:00:57 +00:00