Commit Graph

504 Commits

Author SHA1 Message Date
Arvid Norberg c1d9198dc3 added largest_contiguous cache flush algorithm 2009-05-23 07:35:45 +00:00
Arvid Norberg 0127edac14 added disk-checking delay, to leave room for other disk operations while checking a torrent 2009-05-22 06:32:39 +00:00
Arvid Norberg cb9c3cb37d memory optimization for checking torrents 2009-05-21 16:15:05 +00:00
Arvid Norberg 6565a3a619 updated docs 2009-05-14 17:23:00 +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 85bf463e11 added session setting to control disk buffer pool allocation sizes 2009-05-12 18:52:05 +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 92f42eb23c fixed move_stororage to handle the case where it fails 2009-05-11 21:18:09 +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 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 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 e4ddb13b6f made the cache_size setting include send and receive buffers 2009-05-02 06:52:57 +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 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 04d1684482 clarified documentation 2009-04-09 19:20:53 +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 db8487be46 auto unchoke improvement 2009-04-04 07:55:34 +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 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 c51f5863dd added documentation for torrent_info::rename_file 2009-02-28 20:14:51 +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 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 13ca386838 improved support for sparse files on windows 2009-02-17 00:11:38 +00:00
Arvid Norberg 855e6bc345 documentation update 2009-02-09 03:48:27 +00:00
Arvid Norberg 5c12db28d2 added option to lock disk cache in physical memory 2009-02-06 09:46:13 +00:00
Arvid Norberg 1ac8f806fa added seed mode support (lazy hash checking) 2009-02-03 07:46:24 +00:00
Arvid Norberg a0333f82db added script to update all files with a libtorrent version number in them 2009-01-29 00:35:57 +00:00
Arvid Norberg daf759f92f improved documentation related to pausing torrents that are auto managed 2009-01-22 03:02:16 +00:00
Arvid Norberg 5b551c1761 merged storage::readv() and storage::writev() 2009-01-17 08:35:48 +00:00
Arvid Norberg e22b66e36a added Bubba to projects page, and fixed typo in manual 2009-01-13 21:39:31 +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 54fea1bf50 clarify documentation of some torrent_info members 2009-01-11 02:07:45 +00:00
Arvid Norberg 7592ad4aee updated disk IO to support unbuffered files 2009-01-11 02:02:34 +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 3c3c8889b1 clarified how completed torrent should be treated wrt saving their resume data. Fixes #457 2009-01-07 02:32:08 +00:00
Arvid Norberg d07ccaf6b8 workaround for sparse files issue on Windows vista 2009-01-05 01:08:09 +00:00
Arvid Norberg d75985b84c fixed documentation typo 2008-12-30 04:04:17 +00:00
Arvid Norberg 732cc0a855 fixed documentation formatting mistake 2008-12-30 03:56:51 +00:00
Arvid Norberg e5d3755afb added support for http seeds (BEP 17) 2008-12-30 03:54:07 +00:00
Arvid Norberg 03e29e6565 fixed queing documentation 2008-12-27 17:22:02 +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 7b8663fa8b support for wide character paths for the GeoIP databases. Fixes #431 2008-12-21 08:48:06 +00:00
Arvid Norberg 325f9babe8 updated feature list and corrected the threads section in the main docs 2008-12-21 02:19:02 +00:00
Arvid Norberg b47f965c85 added torrent_handle::read_piece(). #441 2008-12-14 19:47:02 +00:00
Arvid Norberg 8c39f679e7 added documentation for seeding_piece_quota. #439 2008-12-13 04:36:41 +00:00
Arvid Norberg 5fb854d724 improved super seeding with strict option 2008-12-09 07:56:37 +00:00
Arvid Norberg 2a9353cf48 prefer udp trackers. Fixes #433 2008-12-08 09:13:21 +00:00
Arvid Norberg b41cdd6469 initial super seeding support 2008-12-08 06:36:22 +00:00
Arvid Norberg 14c142d997 added add_piece() to inject data from external sources 2008-12-07 21:04:19 +00:00
Arvid Norberg 58a3f6e4a0 added wpath overload for torrent_info constructor 2008-12-01 07:52:59 +00:00
Arvid Norberg 4b738fca7a added previous state to state_changed_alert. #401 2008-12-01 00:19:05 +00:00
Arvid Norberg 8e48e81ead added wpath and wstring overloads for functions dealing with paths for more complete wide character support. #432 2008-11-30 08:12:26 +00:00
Arvid Norberg a10db6dad7 added missing documentation of torrent_handle::rename_file 2008-11-30 07:04:21 +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 3fd5405fa9 torrent_handle::add_tracker() 2008-11-26 01:42:14 +00:00
Arvid Norberg 30c98c4b37 fixed missing documentation 2008-11-22 02:55:38 +00:00
Arvid Norberg 723aba6c24 solved issue with pausing checking torrents. Introduced a new state, checkin_resume_data, which a torrent is in while waiting for the disk io thread to verify the resume data, but before it has been determined wheter it should be queued for checking or not 2008-11-19 00:46:48 +00:00
Arvid Norberg 78abf8a340 made recent change where the TCP/IP overhead is take into account when rate limiting, optional 2008-11-18 11:14:44 +00:00
Arvid Norberg 1c1ba2b383 fixed documentation and client_test code when waiting for resume_data_alert 2008-11-18 10:30:57 +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 dd97d49753 added tvitty to projects page, updated and regenerated docs 2008-11-03 01:42:19 +00:00
Arvid Norberg 7fd2fd4732 added performance warnings for when the IP overhead eats up the entire up- or download rate limit 2008-10-28 06:45:42 +00:00
Arvid Norberg 971f437b41 added num_pieces to peer_info. Fixes #385 2008-10-24 00:15:39 +00:00
Arvid Norberg 49c01d7754 moved UPNP_LOGGING out of upnp.cpp and added alerts for when upnp logs something 2008-10-22 01:12:14 +00:00
Arvid Norberg f04e9e9875 made unchoke interval depend on piece size 2008-10-18 22:35:10 +00:00
Arvid Norberg 872956e3f4 fix documentation regarding storage_mode_allocate 2008-10-18 22:12:31 +00:00
Arvid Norberg a599d9e8ec fixed typos in documentation and made makefile build pdfs with rst2pdf 2008-10-17 17:31:20 +00:00
Arvid Norberg 5b7cf047b7 fixed pdf generation of manual.rst and updated makefile 2008-10-17 07:07:31 +00:00
Arvid Norberg 447c32a7ba bumped version number in docs 2008-10-17 03:26:59 +00:00
Arvid Norberg 18017c3f72 updated documentation on saving resume data and fixed client_test to do it properly 2008-10-17 02:26:08 +00:00
Arvid Norberg 183040933e clarify all_time_* documentation 2008-10-15 17:55:44 +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 894d623729 fixed typo in docs 2008-10-05 23:03:33 +00:00
Arvid Norberg 1092c558e4 counts newly started torrents as active up to 2 minutes, to give them a chance to start downloading. Active torrents are not considered slow in the auto manager. 2008-10-01 05:25:18 +00:00
Andrew Resch 4189e0b697 add peer_info::progress 2008-09-25 20:39:06 +00:00
Arvid Norberg 80e9e8d1cf changed torrent::set_metadata() to reduce code duplication in metadata extensions. Exposed torrent_handle::set_metadata() to the public interface 2008-09-24 02:32:33 +00:00
Arvid Norberg 1ac3b8298c report tracker bandwidth usage and include it in rate limiter 2008-09-22 00:15:05 +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 0338510b9b added more bandwidth monitoring of DHT and TCP/IP overhead. added monitoring of the running DHT lookups 2008-09-20 17:42:25 +00:00
Arvid Norberg d8cc89fd13 updated docs 2008-09-17 15:25:12 +00:00
Arvid Norberg 7f143791d5 added get_storage_impl() to torrent_handle 2008-09-04 16:20:19 +00:00
Arvid Norberg e4e0d3f062 fixed storage_interface document typo 2008-09-04 11:21:01 +00:00
Arvid Norberg 5a3995aad3 fixed documentation regarding storage_interface 2008-09-04 11:09:39 +00:00
Arvid Norberg 48abc4e7e1 fixed typo 2008-08-21 11:25:10 +00:00
Arvid Norberg 635341f1e4 fixed the definition of torrent_handle::is_paused() to be consistent with torrent_status::paused and made it clear in the documentation 2008-08-21 11:24:24 +00:00
Arvid Norberg 37389e4fe4 added test to measure peak download rate and introduced performance warning alert when disk buffer limit and request limit are reached 2008-08-19 15:04:14 +00:00
Arvid Norberg 7d47ed54eb removed connecting_to_tracker state 2008-08-03 15:32:15 +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 18b14e56df made the minimum announce interval configurable 2008-08-01 22:34:37 +00:00
Arvid Norberg c605c8021f added file priority functions 2008-07-20 16:00:08 +00:00
Arvid Norberg 7607034ab6 exposed upload_only in peer_info 2008-07-19 07:57:43 +00:00
Arvid Norberg ff6cbbc6b6 added torrent_handle::clear_error() to retry a torrent that is in an error state (torrent_status::error is set) 2008-07-12 17:00:52 +00:00
Arvid Norberg 3162a03d0c fix manual markup 2008-07-12 13:40:21 +00:00
Arvid Norberg 9bf25d1006 changed the definition of file_progress and deprecated the old function. Python bindings only exposes the new one 2008-07-12 13:38:22 +00:00
Arvid Norberg 486fb1082d reports event in tracker_announce_alert 2008-07-11 12:00:29 +00:00
Arvid Norberg 9c9c13c7bb exposed read cache info as well as write cache 2008-07-11 10:29:26 +00:00
Arvid Norberg 589e098002 fixed parole mode with timeouts and made it optional 2008-07-11 09:23:22 +00:00
Arvid Norberg 96ca475652 added redundant and failed byte counters to session 2008-07-11 07:30:04 +00:00
Arvid Norberg a20f1a8fa0 keeps track of the number of requests waiting in the send buffer and adjusts bandwidht priority accordingly in the bandwidth limiter 2008-07-08 00:03: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
Andrew Resch 94cbac20cd Do not count downloads as seeds in the queue system. 2008-07-01 21:07:18 +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 d396ab7b17 added pause and resume to the session. Fixes #349 2008-06-29 19:08:30 +00:00
Arvid Norberg 2ac5c13e6f introduced a stricter timeout on piece requests and snubbing. exposed some more data about this through the peer_info. Fixes #40 2008-06-29 09:50:42 +00:00
Arvid Norberg 0f0ea269bc added an active torrent limit 2008-06-21 12:31:28 +00:00
Arvid Norberg b13911a7ed corrected default value in docs 2008-06-20 09:04:03 +00:00
Andrew Resch d70ec645d7 Make 'active_seeds' and 'active_downloads' use -1 as unlimited 2008-06-17 15:44:04 +00:00
Arvid Norberg 0241bf78ce added is_sequential_download to torrent_handle 2008-06-17 08:30:04 +00:00
Arvid Norberg 7df5d4a9c6 changed queuing logic 2008-06-13 05:11:36 +00:00
Andrew Resch 75eced80f2 Update docs for torrent_resumed alert 2008-06-08 05:17:35 +00:00
Arvid Norberg a1857f9699 added force_recheck to torrent_handle. Fixes #120 2008-06-07 16:24:56 +00:00
Arvid Norberg 9d1e77dc88 optimized away torrent::m_have_pieces (#62) and added some documentation on bitfield. The piece picker is now constructed with the torrent, but still freed when turned into a seed 2008-06-07 02:58:28 +00:00
Arvid Norberg bcc24bf831 added has_incoming to torrent_status per #315 2008-06-05 18:19:03 +00:00
Arvid Norberg 31c9d378f5 completed queuing. It is now possible to change and query queue position of torrents. 2008-05-29 03:37:19 +00:00
Arvid Norberg fd98434c97 peer list optimization and introduced hard limit on peer list size 2008-05-28 18:25:48 +00:00
Arvid Norberg 3910fe78de separated file_storage from torrent_info and create_torrent 2008-05-28 08:44:40 +00:00
Arvid Norberg dbb625a910 torrent_info fixes. make_torrent now builds 2008-05-20 09:49:40 +00:00
Arvid Norberg 67354421fb introduced an error state for torrents. Torrents with an error are not restarted automatically 2008-05-20 07:57:44 +00:00
Arvid Norberg 777954ab3e automatically scrape auto managed torrents to keep track of downloader/seed ratio 2008-05-19 04:06:25 +00:00
Arvid Norberg 0ed87e4c59 updated python binding to match the recently changed torrent_info. reintroduced add_node 2008-05-15 07:37:34 +00:00
Arvid Norberg fb154e91f8 added documentation for wait_for_alert 2008-05-15 00:45:01 +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 971ead4a44 made redundant connction closing optional (defaults to on) 2008-05-12 06:25:53 +00:00
Arvid Norberg 9429ca4b1f replaced seed cycles with seed rank 2008-05-06 18:03:41 +00:00
Arvid Norberg c043d4b21d initial support for queuing 2008-04-24 03:28:48 +00:00
Arvid Norberg 7a432786e7 added url to tracker alerts. introduced a base class for all tracker alerts 2008-04-23 01:54:21 +00:00
Arvid Norberg 9a434a919f some more ASNum additions 2008-04-22 00:05:23 +00:00
Arvid Norberg 755e50bb12 added active_time, seeding_time, all_time_upload and all_time_download to torrent_status. Also updated docs with some missing entries in torrent_status 2008-04-16 06:31:05 +00:00
Arvid Norberg 3fea2080fd added an asynchronous save_resume_data to make it easier to synchronize with the disk IO thread 2008-04-13 18:54:36 +00:00
Arvid Norberg 42f55adcce support for country lookup through GeoIP 2008-04-11 08:46:43 +00:00
Arvid Norberg 093d912e9a receive buffer optimization. added receive_buffer_size and used_receive_buffer to peer_info. changed plugin api to make use of new disk_buffer_holder type 2008-04-10 10:03:23 +00:00
Arvid Norberg 6b3ac0be2a documentation fixes 2008-04-07 00:15:36 +00:00
Arvid Norberg e8f2ee8b37 removed supports_sparse_files documentation since it's not in libtorrent anymore 2008-04-07 00:09:10 +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 0fcb204128 added peak rates to peer_info 2008-04-03 06:11:21 +00:00
Arvid Norberg ce89b00c18 documented list_peers and list_seeds 2008-03-30 15:48:45 +00:00
Arvid Norberg 45a7329d5c added alert for when the client's external IP is received 2008-03-29 22:45:55 +00:00
Arvid Norberg 2014e312b1 exposed connection_candidates in torrent_status and made a small optimization to not attempt to connect peers on swarms that don't have any connect candidates 2008-03-29 18:47:24 +00:00
Arvid Norberg 8132c6aad6 added option to control TOS byte in peer traffic 2008-03-12 16:58:23 +00:00
Arvid Norberg 1402c3b266 fixed typo in docs and regenerated html files 2008-03-01 18:26:15 +00:00
Arvid Norberg 9d3b60edb7 added support to bind outgoing connections to specific ports (might be useful to do traffic shaping) 2008-02-28 07:34:07 +00:00