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
|
36ca0eb3ba
|
addition to previous peer connection download/upload limit fix
|
2007-04-02 23:10:11 +00:00 |
Arvid Norberg
|
ed3bb7e4e8
|
fixed peer connection rate limits
|
2007-04-02 22:25:58 +00:00 |
Arvid Norberg
|
ec2962dd62
|
extensions are now instantiated for web seeds as well
|
2007-04-02 20:00:24 +00:00 |
Arvid Norberg
|
fc46a731eb
|
modified and enabled invariant checking for piece_picker
|
2007-03-29 00:52:16 +00:00 |
Arvid Norberg
|
0344cadd69
|
improved logging of bitfields
|
2007-03-28 20:54:51 +00:00 |
Arvid Norberg
|
e8eb1ca96c
|
prioritizes upload bandwidth to peers we are interested in and that have unchoked us
|
2007-03-28 19:11:30 +00:00 |
Arvid Norberg
|
f1af5dc637
|
changes to ut_pex, added support for seed flag in pex messages
|
2007-03-28 01:06:15 +00:00 |
Arvid Norberg
|
29e43d7f62
|
added http_connection and a simple xml parser, used by a upnp implementation that still isn't finished
|
2007-03-27 07:04:31 +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
|
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
|
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
|
ecaa3068d5
|
added natpmp support. bumped version number to 0.13. added piece priority support to the piece picker. optmized and simplified the piece picker in the process.
|
2007-03-15 22:03:56 +00:00 |
Arvid Norberg
|
c40a75f844
|
IPv6 fixes
|
2007-02-27 17:21:46 +00:00 |
Arvid Norberg
|
fcc9c49608
|
fixed issue with metadata-less torrents and their statistics updates
|
2007-02-25 05:20:14 +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
|
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
|
a3bf238143
|
fixed typo in previous checkin and updated AUTHORS
|
2007-02-12 05:56:29 +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
|
05f4ce5b6c
|
fixed potetial deadlock in bandwidth manager. Fixed http-tracker requests that are sensitive to existing arguments in url (avoids duplicates and doesn't replace arguments)
|
2007-01-30 17:56:42 +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
|
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
|
373b18233a
|
reverted some bad changes
|
2007-01-01 11:54:31 +00:00 |
Arvid Norberg
|
45864b15ec
|
fixed incorrect assert in bytes_done()
|
2006-12-31 14:48:18 +00:00 |
Arvid Norberg
|
a78ef76592
|
commented out an expensive invariant check. Fixed http parser to accept responses with only LF (and not CRLF)
|
2006-12-29 23:40:56 +00:00 |
Arvid Norberg
|
d50ab33855
|
added clients to identify_client and a minor fix
|
2006-12-27 15:14:17 +00:00 |
Arvid Norberg
|
c69479a166
|
fixed the cause of an inconsistency in the piece picker and the torrent
|
2006-12-22 00:45:43 +00:00 |
Arvid Norberg
|
f83db0a423
|
consistency fixes related to shutting down
|
2006-12-21 22:20:28 +00:00 |
Arvid Norberg
|
755d9f5967
|
since the web seed downloader now calls incoming_piece with correct block sizes, incoming piece can be reverted to not allow incorrect block sizes
|
2006-12-21 11:37:03 +00:00 |
Arvid Norberg
|
1b46fb9e1b
|
fixed an assert in teh web seed downloader
|
2006-12-21 02:44:00 +00:00 |
Arvid Norberg
|
c32dd33a2d
|
commented out an expensive invariant check
|
2006-12-18 01:24:35 +00:00 |
Arvid Norberg
|
3a7eeb3966
|
rewrote most of the web seed downloader to report its progress accurately (to prevent inconsistencies in the core). Not well tested with multi file torrents yet
|
2006-12-18 01:23:30 +00:00 |
Arvid Norberg
|
2ebff76caa
|
fixes
|
2006-12-16 03:55:20 +00:00 |
Arvid Norberg
|
80bcbdf044
|
fixed typo
|
2006-12-16 03:36:33 +00:00 |
Arvid Norberg
|
cf4aa6d6e1
|
added more asserts related to the invariance between the peer connections' request queue and the piece picker
|
2006-12-16 03:34:56 +00:00 |
Arvid Norberg
|
400a2fe82a
|
added more asserts related to the invariance between the peer connections' request queue and the piece picker
|
2006-12-16 02:19:53 +00:00 |
Arvid Norberg
|
13facbdb83
|
added a strand for all async operations for thread safety
|
2006-12-15 17:47:21 +00:00 |
Arvid Norberg
|
79ebcf5dd8
|
modified the hueristic for taking over blocks slightly, added logging
|
2006-12-15 10:42:56 +00:00 |
Arvid Norberg
|
1271334f95
|
fix
|
2006-12-15 09:38:52 +00:00 |
Arvid Norberg
|
16b7898de9
|
added some asserts
|
2006-12-15 02:26:11 +00:00 |
Arvid Norberg
|
9e27e33c99
|
added some asserts and updated changelog
|
2006-12-14 16:12:31 +00:00 |
Arvid Norberg
|
fcf211378a
|
fixed http_tracker_connection to finally use the http-parser class (which also web_seed_connection uses). also fixed a case sensitivity issue with http header names.
|
2006-12-12 02:28:53 +00:00 |
Arvid Norberg
|
fcf20c7c0c
|
invariant check fixes
|
2006-12-11 15:43:27 +00:00 |
Arvid Norberg
|
f0e97d5aff
|
fixes and asserts partly related to the freeing of the piece picker
|
2006-12-11 12:48:33 +00:00 |
Arvid Norberg
|
d10f06059d
|
fix related to the recent piece_picker optimization
|
2006-12-05 23:53:56 +00:00 |
Arvid Norberg
|
e49934f236
|
fixed typo
|
2006-12-04 20:46:38 +00:00 |
Arvid Norberg
|
ef235faede
|
added MLDonkey to identify client, fixed a problem introduced with the recent piece_picker optimization, choked peers should now waste less bandwidth in the quota management.
|
2006-12-04 20:42:47 +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
|
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
|
01f1d01d58
|
improved logging, fixed option to allow multiple connections from the same IP
|
2006-11-15 21:39: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
|
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
|
4403eac97b
|
fixed bugs reported by Massaroddel. Tracker request peer-count could be incorrect. Empty files were not created in full allocation mode.
|
2006-07-08 19:41:39 +00:00 |
Arvid Norberg
|
175fb8770b
|
added peer_timeout and urlseed_timeout to session_settings, they control the timeout for peers and web seeds respectively. Added BitSlug to the projects page. Added more debug logging when resolving web seed hostnames. Updated documentation.
|
2006-06-28 23:27:44 +00:00 |
Arvid Norberg
|
d3ba5edd6d
|
fixed a long standing (quite rare) bug, thanks to Massaroddel. Made the tests clean up their temporary files.
|
2006-06-24 22:30:59 +00:00 |
Arvid Norberg
|
8fafa58c1f
|
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 23:24:36 +00:00 |
Arvid Norberg
|
3d06c0636a
|
*** empty log message ***
|
2006-05-29 17:50:57 +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
|
73b1c5c9b8
|
cleaned up comments, added some asserts, added setup_send() as proposed by Tianhao Qiu to speed up connection attempts
|
2006-05-01 23:34:37 +00:00 |
Arvid Norberg
|
d63ceac56c
|
fixed a bug in client_test. fixed some problems related to the previous buffer bug fix. all tests pass now.
|
2006-04-30 10:28:45 +00:00 |
Arvid Norberg
|
18cb6736ea
|
fixed a serious bug where corrupt messages could be sent out.
|
2006-04-30 00:39:18 +00:00 |
Arvid Norberg
|
d1c33c0d2b
|
windows fixes
|
2006-04-27 00:39:21 +00:00 |
Arvid Norberg
|
41810b1166
|
merged back the asio development branch
|
2006-04-25 21:04:48 +00:00 |
Arvid Norberg
|
410af930a7
|
no longer expects requests to be handled in fifo order
|
2006-02-23 10:53:07 +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
|
2e851505f8
|
merged fixes from release branch
|
2005-11-22 00:18:39 +00:00 |
Arvid Norberg
|
ec7eb0ebd6
|
more asserts in peer_connection
|
2005-11-04 00:14:55 +00:00 |
Arvid Norberg
|
051aa5dbe0
|
fixed an incorrect assert and added another one in the invariant check
|
2005-11-03 22:55:51 +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
|
6d7236fbea
|
fixed unchecked input
|
2005-10-18 18:16:36 +00:00 |
Arvid Norberg
|
51052fa2b1
|
fixed incorrect assert in file_win.cpp, added windows-unicode function for file_size
|
2005-10-17 20:37:40 +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
|
a44c3c7811
|
fixed bug where upload ratio was not being respected
|
2005-10-15 17:21:49 +00:00 |
Arvid Norberg
|
ea0e803fff
|
removed some debug logging
|
2005-10-13 21:51:59 +00:00 |
Arvid Norberg
|
b80c8720e3
|
fixed incorrect assert
|
2005-10-01 16:18:36 +00:00 |
Arvid Norberg
|
a09159c239
|
fixed the buggy changes from last revision, modified the invariant checks
|
2005-10-01 15:12:10 +00:00 |
Arvid Norberg
|
7cfc0b2e44
|
fixed bug introduced when adding the separate request queue
|
2005-09-29 23:31:39 +00:00 |
Arvid Norberg
|
8ef7f58d16
|
fixed bug where some blocks weren't restored in the piece picker when the peer they were requested from disconnected. made the invariant check on policy work
|
2005-09-28 23:58:55 +00:00 |
Arvid Norberg
|
beee914277
|
separated the queue of blocks to be requested from peers and those allocated for peers. This sets a hard limit on the remote request queue size and works better with BitComet
|
2005-09-27 08:07:24 +00:00 |
Arvid Norberg
|
09c98711d5
|
made the peer_connection re-request pieces that aren't sent (fixes a problem where the download could get stuck because bitcomet ignores some requests)
|
2005-09-21 21:44:38 +00:00 |
Arvid Norberg
|
82c0ca5675
|
Changed the way libtorrent find out if a peer supports its extensions to make it compatible with Mainline beta.
|
2005-09-18 10:18:23 +00:00 |
Arvid Norberg
|
5a1e064783
|
Added support for dht-port message. It is currently only logged.
|
2005-09-14 22:45:22 +00:00 |
Arvid Norberg
|
7f890239c4
|
Added new send buffer class to avoid unecessary copying of outgoing data.
|
2005-09-14 19:33:16 +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
|
84ddeacea0
|
*** empty log message ***
|
2005-08-23 09:59:56 +00:00 |
Arvid Norberg
|
e930580f13
|
*** empty log message ***
|
2005-08-18 23:55:32 +00:00 |
Arvid Norberg
|
d19c2c6483
|
removed olf workarounds for vc6.5 and added documentation for building with autotools
|
2005-08-15 18:03:57 +00:00 |
Arvid Norberg
|
c1ec7e8830
|
*** empty log message ***
|
2005-08-05 02:43:44 +00:00 |
Arvid Norberg
|
57144ea15d
|
*** empty log message ***
|
2005-08-03 22:51:21 +00:00 |
Arvid Norberg
|
de8839cc62
|
*** empty log message ***
|
2005-07-22 17:16:23 +00:00 |