Arvid Norberg
|
89a9a25197
|
exception fixes in torrent
|
2008-04-07 02:51:21 +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
|
ffecb32b81
|
made a bias to give connection attempts to downloading torrents with few peers. Should accelerate downloads on windows (where there's a half-open connection limit)
|
2008-03-29 19:39:24 +00:00 |
Arvid Norberg
|
f53cfa7eeb
|
removed checker thread
|
2008-03-08 06:06:31 +00:00 |
Arvid Norberg
|
df74cbb78a
|
fixed logging=errors configuration
|
2008-02-17 22:51:03 +00:00 |
Arvid Norberg
|
7e83c3fc51
|
changed storage interface to not require exceptions
|
2008-02-14 03:48:20 +00:00 |
Arvid Norberg
|
c798ab30e1
|
rewrote the piece picker to be more cpu and memory efficient. replaces the concept of sequential-download-threshold with just a sequential download settings
|
2008-01-31 17:52:29 +00:00 |
Arvid Norberg
|
5527a8e9b1
|
fixed build issue on msvc
|
2008-01-27 21:03:33 +00:00 |
Arvid Norberg
|
127d3e6ad5
|
bandwidth limiter fixes. proper priority that cannot starve connections
|
2008-01-17 17:40:46 +00:00 |
Arvid Norberg
|
832c0c8b63
|
improved auto-unchoke mechanism
|
2008-01-15 08:37:48 +00:00 |
Arvid Norberg
|
1d6e0f5bf6
|
bandwidth request block size optimization
|
2008-01-07 04:47:20 +00:00 |
Arvid Norberg
|
cf4036310b
|
changed the way connections are disconnected. improved logging. Does not depend on exceptions anymore
|
2008-01-07 01:10:46 +00:00 |
Arvid Norberg
|
ddf16fb3bb
|
separated bandwidth_manager into bandwidht_limit and bandwidth_queue_entry and fixed problems related to #225
|
2007-12-31 09:41:50 +00:00 |
Arvid Norberg
|
eb8ea0f461
|
made torrent_info not rely on exception support
|
2007-12-28 20:11:10 +00:00 |
Arvid Norberg
|
948f53a8af
|
assert fix
|
2007-12-14 06:09:44 +00:00 |
Arvid Norberg
|
1cc0118c9c
|
supports retry for web seeds that respond with 503
|
2007-11-27 03:37:47 +00:00 |
Arvid Norberg
|
c92fef5b69
|
simplified torrent_handle by using a macro and moving the big chunks of code into torrent (get_download_queue() and get_peer_info())
|
2007-11-25 18:48:43 +00:00 |
Arvid Norberg
|
fabfe6cd50
|
added scrape support
|
2007-11-20 22:46:27 +00:00 |
Arvid Norberg
|
80e8aa0a18
|
add_extension on torrent_handle, to add an extension on an already running torrent
|
2007-11-08 01:45:35 +00:00 |
Arvid Norberg
|
1a280e31fa
|
cleanup. changed the connection map into a set of peer_connections. moved the policy object into the torrent (as opposed to being a pointer). Fixes issues with multiple peers on the same IP. Reduces some lookups.
|
2007-10-31 09:48:20 +00:00 |
Arvid Norberg
|
fcc238e801
|
lowered piece timeout and sends cancels for pieces when a time out occurs
|
2007-10-22 20:58:42 +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
|
966800cd5b
|
replaced the assert macro to TORRENT_ASSERT instead of hi-jacking assert.
|
2007-10-05 00:30:00 +00:00 |
Arvid Norberg
|
16886741d0
|
release_files now keeps the torrent object alive
|
2007-10-02 18:34:34 +00:00 |
Arvid Norberg
|
57a76f9db6
|
fixed debug assert on linux
|
2007-09-10 06:12:41 +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
|
744d96796b
|
made it possible to start torrents in paused state. updated documentation
|
2007-08-22 05:31:42 +00:00 |
Arvid Norberg
|
c70223ff38
|
added url seed related functions to torrent_handle
|
2007-08-17 16:40:55 +00:00 |
Arvid Norberg
|
3d3df51d45
|
fixed per torrent unchoke limit
|
2007-08-17 07:37:08 +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
|
f67deba30e
|
fixed #81
|
2007-07-26 07:04:35 +00:00 |
Arvid Norberg
|
9bdf2a9c8d
|
fixed invariant check in policy
|
2007-07-10 17:25:10 +00:00 |
Arvid Norberg
|
a3e66a3efe
|
made the piece picker handle multi-request blocks better. fixes problem that might occur at the end of a torrent where the piece picker could take over blocks back and forth
|
2007-07-06 17:15:35 +00:00 |
Arvid Norberg
|
b20270d243
|
added more asserts related to recent downloading_piece optimization and fixed a translation problem to the public interface
|
2007-07-04 15:46:10 +00:00 |
Arvid Norberg
|
e714e1aeba
|
improved bandwidth limiter and added a unit test for it
|
2007-07-02 23:48:06 +00:00 |
Arvid Norberg
|
bbaa2efcb0
|
removed asserts that are can no longer be maintained with the async io
|
2007-06-13 18:09:52 +00:00 |
Arvid Norberg
|
b75a69cd47
|
added alerts for synchronizing disk io when pausing and moving storage
|
2007-06-11 21:24:14 +00:00 |
Arvid Norberg
|
3b8670626a
|
merged back async_io branch into trunk
|
2007-06-10 20:46:09 +00:00 |
Arvid Norberg
|
14a15831ef
|
exposed piece availability vector
|
2007-05-30 06:52:59 +00:00 |
Arvid Norberg
|
1d15a5040c
|
removed old unused logging
|
2007-05-26 22:55:21 +00:00 |
Arvid Norberg
|
c10e74f4fc
|
improved control over the rate of connection attempts
|
2007-05-25 21:00:35 +00:00 |
Arvid Norberg
|
ea45641c8b
|
made lsd work
|
2007-05-17 00:01:51 +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
|
54805ca60b
|
added option to disable country resolving
|
2007-05-02 19:47:38 +00:00 |
Arvid Norberg
|
04e41cf702
|
improved connection queue handling slightly. Will require further improvements
|
2007-05-02 17:38:37 +00:00 |
Arvid Norberg
|
3794b49e3a
|
fixed warning in msvc
|
2007-04-17 21:50:48 +00:00 |
Arvid Norberg
|
40804a829b
|
failcount is reset on a peer that successfully connects. documented max_failcount and min_reconnect_time. implemented seed optimization for piece_picker (inc_refcount_all and dec_refcount_all), ticket #17
|
2007-04-15 02:14:02 +00:00 |
Arvid Norberg
|
1fd3216e6c
|
fix to previous check-in
|
2007-04-11 22:50:01 +00:00 |
Arvid Norberg
|
87b1cdc341
|
fix to avoid connecting web seeds when not a seed but finished
|
2007-04-11 22:27:58 +00:00 |
Arvid Norberg
|
e503e334d5
|
fix to previous check-in
|
2007-04-11 17:44:15 +00:00 |
Arvid Norberg
|
109cc3f232
|
made the announce timer (for dht and lsd) use a weak pointer instead of raw pointer, to avoid problems when torrent is being destructed
|
2007-04-11 17:22:19 +00:00 |
Arvid Norberg
|
250adabcfa
|
removed unused web stats
|
2007-04-11 16:50:54 +00:00 |
Arvid Norberg
|
3ed24da320
|
added source to peer_info, which is a bitmask of the sources where the peer has been acquired from
|
2007-04-10 21:23:13 +00:00 |
Arvid Norberg
|
4ceb6a02ea
|
added download_limit and upload_limit functions to torrent_handle
|
2007-04-10 09:25:17 +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
|
a4ccee15df
|
removed unused code
|
2007-04-04 02:10:25 +00:00 |
Arvid Norberg
|
5e32484194
|
first stab at getting local service discovery
|
2007-04-04 02:06:07 +00:00 |
Arvid Norberg
|
72fd437ff0
|
moved the resume data verification to the storage, since the storage may map the files differently. The creation of resume data should probably also be moved there
|
2007-03-27 23:49:05 +00:00 |
Arvid Norberg
|
20e38bc42b
|
peer interest flag is now updated when priority is changed. fixes in piece_picker
|
2007-03-21 02:09:50 +00:00 |
Arvid Norberg
|
776b399a97
|
added api for piece priorities
|
2007-03-20 01:59:00 +00:00 |
Arvid Norberg
|
7ff5893431
|
reverted bad check-in where files_checked was removed from piece_picker
|
2007-03-17 17:28:59 +00:00 |
Arvid Norberg
|
4ac08f393a
|
simplified the piece picker by initializing it properly in its constructor. Removed natpmp reporting port map success when removing mappings. fix where incoming connections before the files were completely checked would cause an assert.
|
2007-03-16 23:28:26 +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
|
6f0a0beadb
|
fix to allow hostnames for peers in tracker responses
|
2007-03-07 18:50:38 +00:00 |
Arvid Norberg
|
4f86042b97
|
bandwidth management fix + improved string conversion fallback in case strings are incorrect in torrent
|
2007-02-19 23:06:20 +00:00 |
Arvid Norberg
|
9c0e9701d9
|
fix for bug in bandwidth throttler when limiting a torrent to lower than bandwidth block size. Fixed #ifndef related to DHT support
|
2007-02-19 00:01:39 +00:00 |
Arvid Norberg
|
f795be7acf
|
made the dht be a fallback by default, fixed glitch in earlier fix to make sure block requests are sent properly, fixed problem in peer_connection::second_tick if the piece picker was removed because of the torrent becoming a seed
|
2007-02-12 09:20:49 +00:00 |
Arvid Norberg
|
98b92e3f02
|
fixed problems in the network layer that made web seeds fail some times. prepared for proxy support in peer connections. worked on the http seeding. added support for web seeds in make_torrent tool
|
2007-02-12 05:46:29 +00:00 |
Arvid Norberg
|
d0ebdb2dee
|
added prioritization in the bandwidth_manager (throttler), web seeds now have lower priority when being handed bandwidth. torrent_reply_alert now includes the number of peers returned from the tracker. updated Changelog
|
2007-02-01 07:33:04 +00:00 |
Arvid Norberg
|
f14c84b01e
|
fixes in DHT to make it work when the number of transaction slots are full (very rare case). Added a feature to (optionally) resolve the countries of peers and updated the docs (see peer_info::country).
|
2007-01-29 07:39:33 +00:00 |
Arvid Norberg
|
87f7b186b0
|
replaced the bandwidth throttling code with a leaky bucket for better accuracy
|
2007-01-10 15:02:25 +00:00 |
Arvid Norberg
|
90feac8126
|
deallocates the piece picker when seeding, to free up unused memory
|
2006-12-04 12:20:34 +00:00 |
Arvid Norberg
|
947df91b20
|
improved support for multiple connections per ip
|
2006-11-30 11:56:19 +00:00 |
Arvid Norberg
|
93b51d7652
|
more tweaks on quota management
|
2006-11-24 16:59:47 +00:00 |
Arvid Norberg
|
c5cf290f49
|
more quota management fixes and more stats for web seeds
|
2006-11-24 14:22:52 +00:00 |
Arvid Norberg
|
8e289bb233
|
improved logging and fixed glitch in quota management.
|
2006-11-21 15:51:28 +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
|
c52de08421
|
added more logging and modified the resource allocation algorithm. A new, looser, upload and download bandwidth limiter is now used, in order to be able to use more of the available bandwidth
|
2006-11-19 15:29: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
|
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
|
1bde539d67
|
made the values sent to the tracker only include complete and hash checked data, to make them increase and decrease monotonically
|
2006-09-24 00:48:31 +00:00 |
Arvid Norberg
|
191fd76b42
|
made sequenced_download_threshold a per torrent setting. Updated the project page layout. Removed incorrect invariant checks in piece picker.
|
2006-09-04 17:17:45 +00:00 |
Arvid Norberg
|
d0a38c50c6
|
fixed crash bug occuring when removing a torrent while it announces on the DHT. Fixed the mainloop not to quit when an uncought exception is thrown.
|
2006-08-29 01:15:24 +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
|
25dae899f0
|
added per file progress, added patch suggested by Tianhao Qui regarding unchoking when a peer becomes uninterested. Updated documentation and removed block quotes around bullet lists.
|
2006-06-11 13:48:39 +00:00 |
Arvid Norberg
|
94628fa78d
|
fixed race condition in peer_connection, fixed assert in torrent destructor, updated tests
|
2006-05-28 19:03:54 +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
|
0b529e8f96
|
added a setting for max outstanding requests, and a limit for BitComet since it's known to have a very low limit, also added an extension header to specify it. Fixed another unnecessary delay spotted by Tianhao Qiu. Cleaned up the logging class a bit. Fixed a bug that would cause an assert when removing a torrent queued for checking.
|
2006-05-14 22:30:05 +00:00 |
Arvid Norberg
|
41810b1166
|
merged back the asio development branch
|
2006-04-25 21:04:48 +00:00 |
Arvid Norberg
|
04ad901577
|
applied (slightly modified) patches from Allen Zhao in an attempt to make it build on vc7
|
2006-01-07 13:48:14 +00:00 |
Arvid Norberg
|
d7b1dda483
|
renamed torrent::interface() since it seems msvc won't allow it as an identifier
|
2005-11-02 19:19:41 +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
|
d3996ccfb9
|
added metadata_failed_alert and allcoating torrent state
|
2005-10-17 13:45:53 +00:00 |
Arvid Norberg
|
23fbb8d240
|
may have fixed a bug where incorrect metadata was sent (introduced with the latest optimization)
|
2005-10-16 20:15:54 +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
|
032f4c715b
|
*** empty log message ***
|
2005-10-15 23:16:39 +00:00 |