Arvid Norberg
|
aa9918a602
|
widen some fields in torrent
|
2013-01-20 08:36:34 +00:00 |
Arvid Norberg
|
e45124fc22
|
back-port heavy weight refcount invariant checking from libtorrent_aio (disabled by default). and also backport piece-picker refcounting bug fix
|
2013-01-06 04:02:29 +00:00 |
Arvid Norberg
|
ac5a9e9882
|
introduce global connection priority for improved swarm performance
|
2012-12-31 06:54:54 +00:00 |
Arvid Norberg
|
5b26d5d962
|
merged utp_socket_manager optimization from libtorrent_aio
|
2012-11-12 09:49:00 +00:00 |
Arvid Norberg
|
f3ec86169e
|
merged swarm startup optimization from libtorrent_aio
|
2012-11-03 03:50:12 +00:00 |
Arvid Norberg
|
b81d1bfe08
|
merged web seed fix from RC_0_16
|
2012-10-06 17:51:59 +00:00 |
Arvid Norberg
|
f5972efe9f
|
merged finished alert asserts from libtorrent_aio
|
2012-10-06 17:50:06 +00:00 |
Arvid Norberg
|
5bc322c031
|
merged get_torrent_info deprecation from libtorrent_aio, replaced by torrent_file()
|
2012-10-02 16:07:55 +00:00 |
Arvid Norberg
|
bff648a89e
|
update copyright dates and add tool to do so
|
2012-10-02 03:16:33 +00:00 |
Arvid Norberg
|
5e2ff1a246
|
merged logging cleanup from RC_0_16
|
2012-09-27 23:04:51 +00:00 |
Arvid Norberg
|
9951724f16
|
back-ported add_torrent_params extension from libtorrent_aio
|
2012-08-31 17:04:02 +00:00 |
Arvid Norberg
|
3c0e7e0a4a
|
keep counters of the number of active downloading and finished torrents in order to have a cheap way of prioritizing peer connections for downloading torrents over finished ones
|
2012-06-21 03:51:39 +00:00 |
Arvid Norberg
|
402d6bb6b6
|
optimize torrent::status to scale better with the number of peers
|
2012-05-06 22:46:21 +00:00 |
Arvid Norberg
|
10b64a7761
|
add all_set() function on bitfield and automatically call inc_refcount_all or dec_refcount_all if all bits are set in a bitfield
|
2012-05-02 18:55:58 +00:00 |
Arvid Norberg
|
bf3751640a
|
fix multiple bitfields issue
|
2012-05-02 01:08:25 +00:00 |
Arvid Norberg
|
2fc7f2191f
|
is_seed() is not a good indicator of whether or not we have a piece picker. use has_picker() instead
|
2012-04-25 19:16:22 +00:00 |
Arvid Norberg
|
49f74be42f
|
make super-seeding a bit more robust
|
2012-04-23 05:48:46 +00:00 |
Arvid Norberg
|
a7f1d7df91
|
make torrent::have_piece support magnet links
|
2012-04-21 16:58:21 +00:00 |
Arvid Norberg
|
40db19ff7d
|
fix build with release-asserts
|
2012-03-30 05:27:06 +00:00 |
Arvid Norberg
|
6fcc469aef
|
support banning web seeds that send corrupt data
|
2012-03-24 01:29:31 +00:00 |
Arvid Norberg
|
a2521bd23c
|
fix a bunch of issues to properly support dynamic linking of libtorrent with visibility=hidden. Still requires a small patch to boost
|
2012-03-18 23:31:04 +00:00 |
Arvid Norberg
|
ea59a9be22
|
simplify connection attempt distribution logic to not lower the connection rate with a downloading torrent among seeding ones
|
2012-03-05 10:42:25 +00:00 |
Arvid Norberg
|
fdc6d3722b
|
fix boost version condition for new asio ssl features
|
2012-02-26 00:01:53 +00:00 |
Arvid Norberg
|
6c395cedee
|
fix build for boost < 1.47
|
2012-02-23 04:32:50 +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
|
818620a5a8
|
fixed release build
|
2012-01-23 05:14:12 +00:00 |
Arvid Norberg
|
7f90a241b6
|
don't let hung outgoing connection attempts block incoming connections
|
2012-01-21 09:05:34 +00:00 |
Arvid Norberg
|
ae90a8f85e
|
verify that torrent names matches the DNS name in its certificate (RFC 2818-style). Fix issues that was breaking SSL support and tidy up a bit
|
2012-01-15 23:34:43 +00:00 |
Arvid Norberg
|
4a40e68a82
|
landed ssl branch back into trunk
|
2012-01-14 16:04:25 +00:00 |
Arvid Norberg
|
f60ea6a4a9
|
support queue positions greater than 32768
|
2011-12-23 19:30:23 +00:00 |
Arvid Norberg
|
5d8ce01c7a
|
silence valgrind warning about uninitialized memory
|
2011-11-20 20:49:18 +00:00 |
Arvid Norberg
|
fdc5e7e8b2
|
keep track of where redundant downloads come from. make the timing out of block requests more reasonable in an attempt to actually complete pieces from other peers when stuck on a slow one
|
2011-11-16 02:29:59 +00:00 |
Arvid Norberg
|
c4232065d8
|
introduced a more scalable API for torrent status updates (post_torrent_updates())
|
2011-11-15 02:34:00 +00:00 |
Arvid Norberg
|
976a50384a
|
some more struct layout optimization
|
2011-09-22 10:37:47 +00:00 |
Arvid Norberg
|
469414d486
|
initial BitTorrent over SSL support
|
2011-09-12 03:51:49 +00:00 |
Arvid Norberg
|
675721d971
|
basic support for bittorrent connections over SSL
|
2011-09-10 05:52: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
|
109e527568
|
added reset_piece_deadline function
|
2011-08-05 06:31:46 +00:00 |
Arvid Norberg
|
8d86c3bacc
|
fixed release-asserts bulid
|
2011-07-05 04:05:12 +00:00 |
Arvid Norberg
|
b8614a36b3
|
fix resume state for paused when torrent was in graceful pause mode
|
2011-06-05 20:48:00 +00:00 |
Arvid Norberg
|
df003ef57c
|
fix checking behavior when pausing/resuming the session
|
2011-06-05 03:06:34 +00:00 |
Arvid Norberg
|
c003e4f810
|
extend plugin API to allow hooking when peers are added to the peer list
|
2011-05-02 01:45:56 +00:00 |
Arvid Norberg
|
a9cc2101c6
|
fixed bug with setting and getting file priorities
|
2011-05-01 17:43:15 +00:00 |
Arvid Norberg
|
0eb7505ad9
|
fix race condition when resolving the hostname of a web seed and removing it
|
2011-04-29 08:09:03 +00:00 |
Arvid Norberg
|
86d52bbe13
|
include info-hash in torrent_status and post event when disk cache is fully flushed when deleting a torrent
|
2011-04-19 08:21:09 +00:00 |
Arvid Norberg
|
c0f2d5186f
|
added option to replace trackers or add trackers when loading trackers from resume data
|
2011-04-10 21:33:29 +00:00 |
Arvid Norberg
|
3435da235d
|
make is_upload_only() be accurate and deal with super seeding special case only where necessary. Fix pointless assert in invariant check
|
2011-04-09 23:57:56 +00:00 |
Arvid Norberg
|
e9459b4df8
|
rss fixes
|
2011-03-23 02:46:22 +00:00 |
Arvid Norberg
|
c15880be91
|
support having torrents that the IP filter doesn't apply to
|
2011-02-27 17:26:57 +00:00 |
Arvid Norberg
|
7288f77ec9
|
support saving metadata in resume file, enable it by default for magnet links
|
2011-02-26 07:48:05 +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
|
513914050c
|
fixed broadcast_lsd option. in trunk, redefined it to only broadcast every 8th packet
|
2011-02-16 10:16:52 +00:00 |
Arvid Norberg
|
b842815710
|
added new session functions to more efficiently query torrent status
|
2011-02-01 09:48:28 +00:00 |
Arvid Norberg
|
87dfdd4790
|
expanded plugin interface to support session state. improved re-request logic in ut_metadata extension. made max metadata size configurable
|
2011-01-29 10:37:21 +00:00 |
Arvid Norberg
|
c223291fb4
|
added support for RSS feeds
|
2011-01-18 03:41:54 +00:00 |
Arvid Norberg
|
a3e7095f84
|
url downloading fix
|
2010-12-30 06:46:28 +00:00 |
Arvid Norberg
|
26053e4b76
|
support adding torrents by url to a .torrent file
|
2010-12-30 01:47:30 +00:00 |
Arvid Norberg
|
dc9af94ee1
|
avoid self-assignment of tcp::endpoint (causes a memcpy with overlapping ranges)
|
2010-12-25 09:13:50 +00:00 |
Arvid Norberg
|
d554cf88e6
|
optimized swarm startup time (shaved off about 1-2 seconds) by introducing torrent connection boost on the first tracker response for a torrent
|
2010-12-17 03:10:56 +00:00 |
Arvid Norberg
|
e5f980d80d
|
merged uTP branch into trunk (yay)
|
2010-11-29 01:33:05 +00:00 |
Arvid Norberg
|
a05acc4bac
|
support trackerid tracker extension
|
2010-11-18 05:51:52 +00:00 |
Arvid Norberg
|
e4de1fc8b1
|
graceful disconnect mode which finishes transactions before disconnecting peers
|
2010-10-30 08:36:18 +00:00 |
Arvid Norberg
|
0dbef9103a
|
some reordering and asserts around web seed name resolution
|
2010-10-30 07:11:04 +00:00 |
Arvid Norberg
|
f84cc340df
|
fixed a bunch of sloppy typos
|
2010-10-29 02:42:41 +00:00 |
Arvid Norberg
|
0d196d3c84
|
document the problem of the disk cache potentially modifying files after saving resume data. In trunk, add a flag to flush the cache in the same call as saving resume data
|
2010-10-29 02:21:43 +00:00 |
Arvid Norberg
|
3948ca3179
|
fixed bugs in http seed connection and added unit test for it
|
2010-10-17 16:15:32 +00:00 |
Arvid Norberg
|
559c4bdf65
|
fixed some msvc warnings
|
2010-10-16 15:24:45 +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
|
440abdfaf2
|
optimistic unchoke fix
|
2010-10-04 04:06:14 +00:00 |
Arvid Norberg
|
8e4addf2c5
|
improved set_max_connections to immediately disconnect peers to match the new limit
|
2010-10-03 10:07:38 +00:00 |
Arvid Norberg
|
a7c87e14dd
|
added functions to query an individual peer's upload and download limit
|
2010-10-01 16:09:22 +00:00 |
Arvid Norberg
|
3fb9fcab9e
|
full support for bep-21 (event=paused)
|
2010-09-06 04:02:15 +00:00 |
Arvid Norberg
|
b6f92aa981
|
added initial support for share-mode
|
2010-09-05 16:01:36 +00:00 |
Arvid Norberg
|
fb8ebc53dd
|
save resume data every 15 minutes no matter what
|
2010-08-25 06:38:04 +00:00 |
Arvid Norberg
|
a85f1f5c61
|
improved logging
|
2010-08-18 17:14:40 +00:00 |
Arvid Norberg
|
6ab555659c
|
anonymous mode fix (don't resolve countries, since that gives away IPs)
|
2010-08-02 06:16:32 +00:00 |
Arvid Norberg
|
1e70456f58
|
improved support for multi-homed clients
|
2010-07-17 07:13:14 +00:00 |
Arvid Norberg
|
4e576f93fd
|
removed the session mutex for improved performance
|
2010-07-14 04:16:38 +00:00 |
Arvid Norberg
|
3310198dae
|
added upload and download activity timer stats for torrents
|
2010-07-08 19:29:38 +00:00 |
Arvid Norberg
|
68e9bf618f
|
removed incorrect assert
|
2010-05-16 22:15:55 +00:00 |
Arvid Norberg
|
feaf4aa082
|
another attempt to fix tracker timer bug. Fixes issue where the tracker timer would be triggered repeatedly. Fixes bug where trackers loaded from resume data would get a fail limit of 3 (now they don't have a limit)
|
2010-05-03 08:24:30 +00:00 |
Arvid Norberg
|
9a5f5562cb
|
improve web seed connection handling
|
2010-04-14 06:22:00 +00:00 |
Arvid Norberg
|
b5efe1c92a
|
added feature to ask a torrent if it needs to save its resume data or not
|
2010-04-12 00:36:31 +00:00 |
Arvid Norberg
|
4c4c7f832a
|
fix for torrent announcing bug introduced when supporting fine grained control over sources torrents are announced to
|
2010-03-31 02:40:00 +00:00 |
Arvid Norberg
|
7e851818b1
|
support more fine-grained torrent states between which peer sources it announces too
|
2010-03-29 00:34:04 +00:00 |
Arvid Norberg
|
5224e0c340
|
complete_ago extension
|
2010-03-19 18:39:51 +00:00 |
Arvid Norberg
|
a3bff512e1
|
added 'added' and 'completed' time to torrent_status
|
2010-03-09 03:21:35 +00:00 |
Arvid Norberg
|
e3a9578e2d
|
fixed some shadow warnings
|
2010-03-06 07:16:39 +00:00 |
Arvid Norberg
|
d4854024db
|
added flags to torrent::status() that can filter which values are calculated
|
2010-03-04 19:15:23 +00:00 |
Arvid Norberg
|
9d6cdb0c89
|
solaris build fixes
|
2010-03-03 07:42:51 +00:00 |
Arvid Norberg
|
aa5fc72fbf
|
made tracker errors use error_code
|
2010-02-23 21:53:45 +00:00 |
Arvid Norberg
|
eff49e42a7
|
added support for torrents with odd piece sizes
|
2010-02-23 16:26:24 +00:00 |
Arvid Norberg
|
59deff7a44
|
fixed issue with disk read cache not being cleared when removing torrents
|
2010-02-21 08:52:26 +00:00 |
Arvid Norberg
|
c050b22d8f
|
optimized memory usage for torrent objects
|
2010-02-14 01:39:55 +00:00 |
Arvid Norberg
|
b12b3ff105
|
simplified web seed logic
|
2010-02-12 06:10:20 +00:00 |
Arvid Norberg
|
7e343a9d6f
|
add size logging to various classes
|
2010-02-08 04:51:34 +00:00 |
Arvid Norberg
|
088f4bf700
|
improved LSD performance and made the interval configurable
|
2010-02-05 08:23:17 +00:00 |
Arvid Norberg
|
c9b594fde1
|
support sending suggest messages based on what's in the read cache. support 'explicit read cache'
|
2010-01-15 16:45:42 +00:00 |
Arvid Norberg
|
85951208e4
|
added support for explicitly flushing the disk cache
|
2010-01-09 21:17:52 +00:00 |
Arvid Norberg
|
0350e86867
|
fixed web seed unit test
|
2009-12-29 17:49:24 +00:00 |
Arvid Norberg
|
0fc90b5655
|
fixed support for min-interval on tracker failures
|
2009-12-21 09:47:32 +00:00 |
Arvid Norberg
|
cebcbc3eeb
|
fixed force reannounce bug with min_interval support
|
2009-12-13 16:36:45 +00:00 |
Arvid Norberg
|
d84c59d13b
|
upload only fix
|
2009-12-05 16:46:10 +00:00 |
Arvid Norberg
|
a6ed83e7fe
|
add load_state/save_state to python bindings and made them build
|
2009-12-05 07:24:22 +00:00 |
Arvid Norberg
|
1e654220fa
|
added support for min_interval
|
2009-12-02 04:05:24 +00:00 |
Arvid Norberg
|
2280454a99
|
support upload-only extension message
|
2009-11-24 18:49:59 +00:00 |
Arvid Norberg
|
6343fe6a6d
|
optimized header dependencies to lower build time
|
2009-11-23 08:38:50 +00:00 |
Arvid Norberg
|
ecb922e013
|
fix comparison operator of web_seed_entry
|
2009-10-26 20:12:57 +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
|
6c137d6ef6
|
announces torrents immediately to the DHT when it's started
|
2009-10-25 02:37:45 +00:00 |
Arvid Norberg
|
8a5b7d5d36
|
got rid of the last recursive mutexes. abstracted the threading primitives (and switched over to use asio's internal ones).
|
2009-10-20 02:49:56 +00:00 |
Arvid Norberg
|
ea1761838a
|
added torrent_status::finished_time
|
2009-09-30 17:21:59 +00:00 |
Arvid Norberg
|
6c67da08d6
|
split socket.hpp up in multiple headers to lower build time somewhat
|
2009-09-16 03:46:36 +00:00 |
Arvid Norberg
|
35bca49c61
|
add torrent priority to adjust bandwidth allocation of torrent's peers
|
2009-09-13 02:24:25 +00:00 |
Arvid Norberg
|
5164c42a00
|
fixed url-seed bug causing only a single web seed to be connected
|
2009-09-07 06:09:57 +00:00 |
Arvid Norberg
|
45fd696bc6
|
added I2P support
|
2009-08-20 03:19:12 +00:00 |
Arvid Norberg
|
137d2d63f5
|
cleaned up policy. Moved logic from policy to torrent
|
2009-07-23 04:38:52 +00:00 |
Arvid Norberg
|
ae3be201c4
|
reduced the number of floating point operations to better support systems with no FPU
|
2009-07-19 04:59:27 +00:00 |
Arvid Norberg
|
51992dda6a
|
added new alert when individual files complete
|
2009-07-04 04:58:24 +00:00 |
Arvid Norberg
|
f09774607f
|
added upload mode
|
2009-06-18 22:32:55 +00:00 |
Arvid Norberg
|
07bcb3545a
|
converted a whole lot of error strings into error_codes. Documented some previously undocumented alerts as well as all the error codes
|
2009-06-12 16:40:38 +00:00 |
Arvid Norberg
|
bd33814376
|
improve disk error handling
|
2009-05-31 22:41:53 +00:00 |
Arvid Norberg
|
27293215c7
|
remove iostream dependency
|
2009-05-30 02:36:57 +00:00 |
Arvid Norberg
|
e3c07c0934
|
converted some recursive mutexes to regular ones
|
2009-05-23 21:36:09 +00:00 |
Arvid Norberg
|
437cb94fd0
|
improved IPv6 support by announcing twice when necessary
|
2009-05-15 21:23:41 +00:00 |
Arvid Norberg
|
7109b86566
|
greatly simplified the rate limiter and generalized all rate limits (peer, torrent, global) to allow for arbitrary rate limit configurations
|
2009-04-26 00:21:59 +00:00 |
Arvid Norberg
|
aba5b2e9d0
|
dropped some iostream dependencies
|
2009-04-04 09:52:25 +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
|
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
|
ba0f894c7c
|
avoid adding a torrent to the checking queue twice
|
2009-02-08 01:29:09 +00:00 |
Arvid Norberg
|
1ac8f806fa
|
added seed mode support (lazy hash checking)
|
2009-02-03 07:46:24 +00:00 |
Arvid Norberg
|
0ba2e2cdbd
|
fixed issue where torrents that failed checking would not resume checking when the error was cleared. One side effect of this fix is that it should now be possible to pause checking torrents with the 0.14 branch
|
2009-01-27 09:18:51 +00:00 |
Arvid Norberg
|
66ccc9d23f
|
improved support for padding files by not counting them in total_wanted_done and total_wanted or progress
|
2009-01-14 07:41:25 +00:00 |
Arvid Norberg
|
d07ccaf6b8
|
workaround for sparse files issue on Windows vista
|
2009-01-05 01:08:09 +00:00 |
Arvid Norberg
|
e5d3755afb
|
added support for http seeds (BEP 17)
|
2008-12-30 03:54:07 +00:00 |
Arvid Norberg
|
b81ae19e86
|
fix uninitialized variable read (next_announce)
|
2008-12-27 07:22:57 +00:00 |
Arvid Norberg
|
b47f965c85
|
added torrent_handle::read_piece(). #441
|
2008-12-14 19:47:02 +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
|
70f4303d92
|
added tracker IP to tracker_response callback and added filtering of local IPs in pex and tracker responses. #409
|
2008-12-01 08:48:54 +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
|
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
|
3fd5405fa9
|
torrent_handle::add_tracker()
|
2008-11-26 01:42:14 +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 |
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
|
8ffc345308
|
fixed crash when add_torrent was fed with invalid resume data
|
2008-09-21 02:08:04 +00:00 |