Commit Graph

297 Commits

Author SHA1 Message Date
Arvid Norberg f09774607f added upload mode 2009-06-18 22:32:55 +00:00
Arvid Norberg 31c422df0a added feature to set a separate global rate limit for local peers 2009-05-14 17:21:19 +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 a961e253ef fix logging build 2009-05-07 16:30:14 +00:00
Arvid Norberg 641abc6c4a slight memory optimization and some header cleanup 2009-05-03 20:21:24 +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 982cf7f7f7 improved support for platforms with no wchar_t and std::wstring 2009-03-31 08:12:35 +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 31054ef069 first implementation of set_piece_deadline 2009-03-17 09:34:44 +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 1ac8f806fa added seed mode support (lazy hash checking) 2009-02-03 07:46:24 +00:00
Arvid Norberg 7b8663fa8b support for wide character paths for the GeoIP databases. Fixes #431 2008-12-21 08:48:06 +00:00
Arvid Norberg f1d981254a added session::set_alert_dispatch() for system specific message loop integration 2008-12-15 07:12:08 +00:00
Arvid Norberg 09b3a865ef fixed compiler flags in pkg-config file and made header files not depend on the NDEBUG define 2008-11-29 21:33:21 +00:00
Arvid Norberg 157603b597 first pass at a link compatibility check 2008-11-23 15:44:11 +00:00
Arvid Norberg e9a33e6a05 added option to set alert mask when constructing session 2008-11-16 02:09:53 +00:00
Arvid Norberg 4e9124019b added accessor to query for the max number of connections 2008-11-08 07:40:55 +00:00
Arvid Norberg b355541a7d applied patch from Sergei Vorobyov to allow changing the limit on outstanding alerts 2008-10-07 05:46:42 +00:00
Arvid Norberg ea578a6acf adds ut_pex, ut_metadata and smart_ban by default in session constructor. Also starts upnp and nat-pmp by default. Fixes #399 2008-09-21 23:19:58 +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 e576babbb8 changed the alerts to have categories and to be filtered with a bitmask instead of having a severity and be filtered by a severity level. 2008-07-06 12:22:56 +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 d396ab7b17 added pause and resume to the session. Fixes #349 2008-06-29 19:08:30 +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 c043d4b21d initial support for queuing 2008-04-24 03:28:48 +00:00
Arvid Norberg 9a434a919f some more ASNum additions 2008-04-22 00:05:23 +00:00
Arvid Norberg 42f55adcce support for country lookup through GeoIP 2008-04-11 08:46:43 +00:00
Arvid Norberg d10205057e port mapping update 2008-04-06 23:18:35 +00:00
Arvid Norberg 2e6b9c2dce revamped part of the port mapping code (UPnP and NAT-PMP). Added documentation for start_{lsd,natpmp,upnp} and stop_{lsd,natpmp,upnp} 2008-04-06 19:17:58 +00:00
Arvid Norberg 57d75e120a initial support for GeoIP (only AS mappings for now) 2008-04-05 04:53:22 +00:00
Arvid Norberg df74cbb78a fixed logging=errors configuration 2008-02-17 22:51:03 +00:00
Arvid Norberg 8cf0510144 added disk cache for write operations 2008-02-08 10:22:05 +00:00
Arvid Norberg c18ae83146 added wait_for_alert() to session. If there is at least one alert in the queue, it returns the front one in the queue, if the queue is empty, it waits until a new alert is posted and returns that one, or returns 0 if the time expires first. 2007-11-25 08:18:57 +00:00
Arvid Norberg 7be29d9b84 applied 'logpath' patch from #202 2007-11-16 21:21:28 +00:00
Arvid Norberg 59c7f5bfbb added option to delete files from disk as a torrent is removed 2007-10-13 03:33:33 +00:00
Arvid Norberg 4d19f7ff0f storage optimization. introduced a nother allocation mode: sparse. Now there is allocate, compact and sparse. Unless compact is used, the memory structures used to keep track of pieces are no longer allocated. sparse storage mode is now the default 2007-10-08 20:01:36 +00:00
Arvid Norberg 7bbfb3bd4b added a userdata parameter to add_torrent that is passed in to plugins 2007-09-14 00:11:33 +00:00
Arvid Norberg ee5ce50502 made max half open connections default to 8 on windows and added query function for that limit on session. 2007-09-10 01:57:40 +00:00
Arvid Norberg c8088459a0 made torrent_info reference counted and held by a boost::intrusive_ptr 2007-09-01 03:00:31 +00:00
Arvid Norberg c0ed1fa13a fixed default value for paused 2007-08-22 05:37:49 +00:00
Arvid Norberg 744d96796b made it possible to start torrents in paused state. updated documentation 2007-08-22 05:31:42 +00:00
Arvid Norberg 4ac1ac8a1f removed allocate_resources. switched to a global unchoker and connection distribution 2007-08-16 12:41:46 +00:00
Arvid Norberg b62bb7944f merged fast-extension => trunk. the fast extension branch is now closed 2007-08-14 17:47:48 +00:00
Arvid Norberg fc74e5d147 added deprecation messages to gcc 2007-08-10 16:57:37 +00:00
Arvid Norberg 3b8670626a merged back async_io branch into trunk 2007-06-10 20:46:09 +00:00
Arvid Norberg 6447a074eb fixes to allow-multiple-connections-per-ip and a unit test that run a swarm of 3 local peers 2007-06-08 23:02:31 +00:00
Arvid Norberg 273f8bd921 merged back encryption branch to trunk 2007-06-06 00:41:20 +00:00
Arvid Norberg d0412a2244 added port filter for outgoing connections 2007-06-01 01:05:57 +00:00
Arvid Norberg 31247c046a supports turning on and off upnp, natpmp and lsd. All ofthem are now off by default 2007-05-31 00:21:54 +00:00
Arvid Norberg 4a906aa31d added option for session statistics output 2007-05-13 22:01:21 +00:00
Arvid Norberg 49bd69cad4 introduced a proper half open TCP connection limit. Also exposed the connection queue to let clients use the same connection limiter as libtorrent. UPnP connections and tracker connection are now also limited as well as peer connections and web seeds 2007-05-05 00:29:33 +00:00
Arvid Norberg 00948e9fc4 first attempt to implement SOCKS5 and proper HTTP proxy support. fixes #22 2007-04-25 18:26:35 +00:00
Arvid Norberg 029953c5ae made the storage into a customization point. it is now interchangable for a custom implementation 2007-03-16 05:29:23 +00:00
Arvid Norberg b0ae8d3a14 tracker fixes for trackerless torrents 2007-02-21 17:15:47 +00:00
Daniel Wallin 39b977973f Added accessor functions for upload_rate_limit and download_rate_limit 2007-01-01 23:51:24 +00:00
Arvid Norberg 0f3874028b added btgdaemon to identify client and applied wojci's patch to add num_connections() and num_uploads() to session 2007-01-01 21:04:30 +00:00
Arvid Norberg d58c6d2e31 fixed so that both session constructors initializes boost.filesystem. Fixed the case where the file check throws exceptions, the torrent is no longer removed, but paused 2006-12-30 23:02:21 +00:00
Arvid Norberg 68e8ea35ea added logging of upload and download statistics, revised some of the quota management, added support for sessions to allocate_resources (patch by wojci) 2006-11-20 21:03:58 +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 4d94c7574c added default constructor to session_proxy 2006-10-15 13:46:52 +00:00
Arvid Norberg f0519e86e8 separated session from session_impl and made a real pimpl-class of it. Introduced the possibility to destruct the sessions async. 2006-10-11 14:02:21 +00:00
Arvid Norberg 910733f29e added proper support for dht router nodes (which are automatically used to bootstrap from, and won't get added to the routing table) 2006-09-27 17:20:18 +00:00
Arvid Norberg 80dc56d388 fixed crashing bug when removing torrents while checking 2006-09-24 11:22:25 +00:00
Arvid Norberg dc2e25141c changed sequencial download threshold api, it is now per torrent 2006-09-04 23:22:21 +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 3e39b90158 updated makefiles to hopefully install the headers in the correct place. Updated docs to use boost 1.33.1 in examples. Changed libtorrent version to 0.10 and updated ChangeLog to prepare for release. 2006-06-25 00:12:18 +00:00
Arvid Norberg 44f21d0fdf fixed crashing bug when destructing session 2006-05-21 09:46:01 +00:00
Arvid Norberg e6bb265d94 replaced http_settings with session_settings and introduced more settings 2006-05-20 23:24:19 +00:00
Arvid Norberg 262e97f21d updated to latest version of asio. fixed a problem with low resolution timers in the second_tick code found by Massaroddel. 2006-05-20 15:30:40 +00:00
Arvid Norberg 41810b1166 merged back the asio development branch 2006-04-25 21:04:48 +00:00
Arvid Norberg 564ae78012 fixed bug caused when sockets were bound to non-local interface 2006-01-06 20:20:20 +00:00
Arvid Norberg bcbe165aee added the ability to limit the number of half-open tcp connections 2005-11-02 16:28:39 +00:00
Arvid Norberg 3f36dd0395 added the ability to build libtorrent as a shared library. Fixed bugs with deleting of incomplete types (replaced auto_ptr with scoped_ptr). Made the string converter fall back on windows local code page if utf-8 decoding failed. 2005-11-01 18:30:39 +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 f770d1438d fixed bug introduced in latest storage changes (triggered when using metadata extension). improved commandline switches to client_test 2005-10-16 09:15:46 +00:00
Arvid Norberg 189a8756ee big change in the way storage is checked. The checker thread can now check the fastresume data of a new torrent without waiting for a currently checking one 2005-10-13 07:59:05 +00:00
Arvid Norberg a15f589341 fixed problem in piece_picker with filtered files, also optimzed it somewhat. Added more logging and added one test to the piece_picker test 2005-09-01 21:04:21 +00:00
Arvid Norberg 52e9eadb4e rollback 2005-08-25 13:11:39 +00:00
spyhole 67527bec0b rename http_settings class as http_proxy class 2005-08-24 23:08:26 +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 0320e097d6 *** empty log message *** 2005-06-16 15:41:04 +00:00
Arvid Norberg 9707b6aeb0 added support for non-compact storage layout. i.e. all the files are allocated on disk before downloading starts 2005-05-13 00:39:39 +00:00
Arvid Norberg 6ff7e76ab2 *** empty log message *** 2005-03-19 12:22:40 +00:00
Arvid Norberg d6015e3c63 *** empty log message *** 2005-01-11 02:13:07 +00:00
Arvid Norberg 5a25be2825 *** empty log message *** 2005-01-08 21:12:19 +00:00
Arvid Norberg b55a1a6766 *** empty log message *** 2004-12-21 12:30:09 +00:00
Arvid Norberg bc774ff491 *** empty log message *** 2004-11-30 11:17:32 +00:00
Arvid Norberg b29e378f22 *** empty log message *** 2004-11-18 22:33:50 +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 29cb9e8969 *** empty log message *** 2004-09-07 23:16:11 +00:00
Arvid Norberg bd296f3657 *** empty log message *** 2004-07-24 11:54:17 +00:00
Arvid Norberg 441117a17e *** empty log message *** 2004-06-17 21:27:26 +00:00
Arvid Norberg e81d628b53 *** empty log message *** 2004-06-17 20:56:49 +00:00
Arvid Norberg f70bd8ac97 added a metadata extension. i.e. torrent-less downloads 2004-06-13 23:30:42 +00:00
Arvid Norberg adbfc0378c *** empty log message *** 2004-04-18 12:28:02 +00:00
Arvid Norberg 26f114216f *** empty log message *** 2004-03-30 19:11:07 +00:00
Arvid Norberg 19abdfb14a *** empty log message *** 2004-03-28 22:44:40 +00:00
Arvid Norberg fac783b4d8 *** empty log message *** 2004-03-28 17:45:37 +00:00
Arvid Norberg bb52b74a9e *** empty log message *** 2004-03-21 02:03:37 +00:00
Magnus Jonsson bbd2d04038 Moved peer_request and piece_block_process out of peer_connection.hpp to their own headers. 2004-03-14 20:01:05 +00:00
Arvid Norberg 02871e5977 *** empty log message *** 2004-03-01 21:54:10 +00:00
Arvid Norberg 1e574575b4 *** empty log message *** 2004-02-26 12:59:01 +00:00
Arvid Norberg 2d363127e9 *** empty log message *** 2004-02-26 00:27:06 +00:00
Arvid Norberg 402046338c *** empty log message *** 2004-02-18 00:08:20 +00:00
Magnus Jonsson 71e1fd4407 *** empty log message *** 2004-02-17 00:18:29 +00:00
Arvid Norberg 80b57290c9 *** empty log message *** 2004-01-31 10:46:15 +00:00
Arvid Norberg fc74e19224 *** empty log message *** 2004-01-26 10:29:00 +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
Arvid Norberg 718f01155f *** empty log message *** 2004-01-25 12:37:15 +00:00
Magnus Jonsson 0634e778e9 *** empty log message *** 2004-01-25 04:18:08 +00:00
Arvid Norberg 19a4dad706 *** empty log message *** 2004-01-24 17:14:03 +00:00
Arvid Norberg 6d22d4144c *** empty log message *** 2004-01-20 11:01:50 +00:00
Arvid Norberg 23256b9b1f *** empty log message *** 2004-01-18 19:12:18 +00:00
Arvid Norberg da5b07ecd8 *** empty log message *** 2004-01-15 22:29:13 +00:00
Arvid Norberg 410b35f95e *** empty log message *** 2004-01-15 16:45:34 +00:00
Arvid Norberg 9983e7c85b *** empty log message *** 2004-01-14 01:19:30 +00:00
Arvid Norberg 9e979efb8b *** empty log message *** 2004-01-12 03:05:10 +00:00
Arvid Norberg 91c9156de1 *** empty log message *** 2004-01-07 00:48:02 +00:00
Arvid Norberg e2baa0a646 *** empty log message *** 2004-01-04 23:51:54 +00:00
Arvid Norberg 95026395f3 *** empty log message *** 2004-01-02 20:46:24 +00:00
Arvid Norberg 5cde50ee01 *** empty log message *** 2004-01-01 23:23:17 +00:00
Arvid Norberg c432c9ad68 *** empty log message *** 2003-12-22 07:14:35 +00:00
Arvid Norberg 5ac9f67f23 *** empty log message *** 2003-12-21 17:28:27 +00:00
Arvid Norberg 3b551ac272 *** empty log message *** 2003-12-17 19:03:23 +00:00
Arvid Norberg 5158ca8558 Updated zlib version.
Changed fignerprint interface to force azureus-style fingerprints.
Tested the load balancing, it seems to work.
2003-12-16 13:33:29 +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
Daniel Wallin 0019e23b4f alerts 2003-11-29 16:34:07 +00:00
Arvid Norberg 94919f9806 *** empty log message *** 2003-11-28 17:29:27 +00:00
Arvid Norberg 420ab6bff2 *** empty log message *** 2003-11-09 18:17:09 +00:00
Arvid Norberg 01d9d10157 *** empty log message *** 2003-11-08 02:16:26 +00:00
Arvid Norberg eb90660022 fixed to work with managed C++ projects. 2003-11-07 01:44:30 +00:00
Arvid Norberg 81289c9354 *** empty log message *** 2003-11-06 10:44:19 +00:00
Arvid Norberg f495117e39 *** empty log message *** 2003-11-05 17:42:27 +00:00
Arvid Norberg c9bfb8aa36 *** empty log message *** 2003-10-31 15:06:32 +00:00
Arvid Norberg 6466b46573 *** empty log message *** 2003-10-31 04:02:51 +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 c0f8ea13e4 *** empty log message *** 2003-10-27 16:06:00 +00:00
Arvid Norberg fca86964f8 *** empty log message *** 2003-10-26 17:35:23 +00:00
Arvid Norberg d2f7be1608 *** empty log message *** 2003-10-26 03:18:17 +00:00
Arvid Norberg 0032bd8601 some cleanup, fixes, added documentation and added some configuration options. 2003-10-25 01:31:06 +00:00
Arvid Norberg a09595c634 made some fixes mainly for the bsd-sockets. It still
doesn't work on linux.
2003-10-24 02:18:11 +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