Arvid Norberg
|
dd26371c0a
|
indentation fix
|
2008-11-10 04:17:16 +00:00 |
Arvid Norberg
|
19c66a1826
|
exception fixes
|
2008-11-05 05:39:18 +00:00 |
Arvid Norberg
|
4dada930ac
|
made torrents not wanting more peers whene they're shutting down. Closes out all connections in the connection queue explicitly when session is shutting down
|
2008-10-30 17:13:10 +00:00 |
Arvid Norberg
|
65c4b7ec13
|
fix for when removing a torrent when it is in the checking state
|
2008-10-26 09:23:00 +00:00 |
Arvid Norberg
|
392dbb71da
|
more fixes to avoid unwanted exceptions
|
2008-10-23 04:10:23 +00:00 |
Arvid Norberg
|
41d5abf0d8
|
exception related fixes. Avoiding functions that may throw in places where exceptions shouldn't be thrown
|
2008-10-21 08:45:42 +00:00 |
Arvid Norberg
|
cfe029d58f
|
updated seed rank to lower priority for finished, but not seeding torrents
|
2008-10-19 08:05:36 +00:00 |
Arvid Norberg
|
3d75732145
|
changed variant_stream to return a pointer instead of a reference when querying for underlying type (avoids exceptions)
|
2008-10-18 07:12:04 +00:00 |
Arvid Norberg
|
c04183d960
|
cleaned up save_resume_data
|
2008-10-17 01:56:36 +00:00 |
Arvid Norberg
|
16d56eaee6
|
clears torrent stats when paused
|
2008-10-15 17:31:20 +00:00 |
Arvid Norberg
|
cb1fce0d62
|
fix to immediately unchoke another peer if an unchoked peer is disconnected
|
2008-10-14 01:00:05 +00:00 |
Arvid Norberg
|
3144767632
|
fixed buffer overrun when calling get_download_queue
|
2008-10-05 07:23:46 +00:00 |
Arvid Norberg
|
d4c5d5835a
|
another state fix where mutliple torrent_finished_alerts could be generated
|
2008-10-05 04:44:29 +00:00 |
Arvid Norberg
|
8f665e949f
|
fixed rare bug where a torrent could be put back into downloading state when finishing checking files if it already finished by then
|
2008-10-05 01:44:57 +00:00 |
Arvid Norberg
|
d4c206841b
|
added support for bitcomet padding files. simplified storage read/write code.
|
2008-10-03 05:49:41 +00:00 |
Arvid Norberg
|
ef42e8f77c
|
fixed rename_file to work when the file hasn't been created yet. Fixed error reporting when rename_file fails. Updates the file in the torrent_handle when filename is updated
|
2008-09-30 23:37:42 +00:00 |
Arvid Norberg
|
8989699e1e
|
fixed invariant check when pausing a torrent
|
2008-09-27 04:58:40 +00:00 |
Arvid Norberg
|
d4e0ea6c1e
|
added assert to make sure #365 doesn't happen
|
2008-09-25 22:08:18 +00:00 |
Arvid Norberg
|
bb674134e3
|
fixed bind_port for outgoing peer connections
|
2008-09-25 07:40:55 +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
|
df5e261ce8
|
fixed resume data loading for paused state
|
2008-09-24 02:29:24 +00:00 |
Arvid Norberg
|
2e0d0046d2
|
made torrent::replace_trackers() start or stop announcing depending on if trackers were added or cleared
|
2008-09-24 02:22:12 +00:00 |
Arvid Norberg
|
a36da15c29
|
saves sequential download in fastresume data
|
2008-09-23 03:52:49 +00:00 |
Arvid Norberg
|
c0c65d8ee6
|
fixed bug in read_fast_resume regarding auto_managed flag
|
2008-09-23 03:21:35 +00:00 |
Arvid Norberg
|
791a1f4365
|
saves trackers and web seeds in fastresume data. Fixes #369
|
2008-09-22 17:39:18 +00:00 |
Arvid Norberg
|
8ffc345308
|
fixed crash when add_torrent was fed with invalid resume data
|
2008-09-21 02:08:04 +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
|
064d93b935
|
optimization for files with prioritiy 0
|
2008-09-19 19:46:04 +00:00 |
Arvid Norberg
|
f14e76a3f9
|
fixed typo in previous iterator fix
|
2008-09-18 17:53:44 +00:00 |
Arvid Norberg
|
cd1301b1c9
|
fix for invalid iterators when changing piece priorities causes peers to disconnect
|
2008-09-17 23:14:59 +00:00 |
Arvid Norberg
|
c087c363be
|
removed left over from debugging
|
2008-09-09 19:47:31 +00:00 |
Arvid Norberg
|
41808f8742
|
big change to improve piece picker. Better end-game mode. More options on which pieces to pick.
|
2008-09-06 21:04:57 +00:00 |
Arvid Norberg
|
aedc92cb24
|
fix to announce with DHT for torrents without metadata
|
2008-08-29 22:58:47 +00:00 |
Arvid Norberg
|
92ed7fb364
|
fixed metadata extension issues
|
2008-08-29 17:21:56 +00:00 |
Arvid Norberg
|
9c59d1a308
|
fixed bug in last check-in
|
2008-08-27 15:29:42 +00:00 |
Arvid Norberg
|
e2ae0a97e2
|
fix for tracker-less torrents (they didn't announce with the tracker)
|
2008-08-27 15:15:41 +00:00 |
Arvid Norberg
|
af62dc1417
|
fixed crash when calling force_recheck on seeding torrent
|
2008-08-26 21:35:33 +00:00 |
Arvid Norberg
|
e9045cc1df
|
fixes bug where priorities where lost when force-rechecking.
|
2008-08-25 22:32:50 +00:00 |
Arvid Norberg
|
e58485822b
|
optimized encryption
|
2008-08-20 23:05:12 +00:00 |
Arvid Norberg
|
0454fb77d7
|
fixed bug where is_sequential_download would return false when it should be true
|
2008-08-19 16:04:01 +00:00 |
Arvid Norberg
|
a134908bac
|
fixed warnings and uninitialized variable
|
2008-08-19 14:53:50 +00:00 |
Arvid Norberg
|
9266afe5f5
|
fixed bug where a torrent would not get into the 'finished' state right after file checking. It would either go to downloading or seeding. Also added test_transfer
|
2008-08-18 20:02:50 +00:00 |
Arvid Norberg
|
7d6a895d1b
|
makes all tracker requests 'stopped' when aborting
|
2008-08-11 14:31:58 +00:00 |
Arvid Norberg
|
9cd95fb52c
|
fix to invariant check
|
2008-08-10 15:00:56 +00:00 |
Arvid Norberg
|
56ae82be2c
|
made the invariant check more strict
|
2008-08-10 10:22:36 +00:00 |
Arvid Norberg
|
54a5dd4af4
|
added invariant check for file-checking queue consistency
|
2008-08-10 09:34:39 +00:00 |
Arvid Norberg
|
10c0956a2f
|
removed redundant IP filter check
|
2008-08-03 23:04:38 +00:00 |
Arvid Norberg
|
7d47ed54eb
|
removed connecting_to_tracker state
|
2008-08-03 15:32:15 +00:00 |
Arvid Norberg
|
18b14e56df
|
made the minimum announce interval configurable
|
2008-08-01 22:34:37 +00:00 |
Arvid Norberg
|
b5467845d7
|
fixed assert in file_progress and build issue when built with expensive invariant checks
|
2008-07-30 08:52:39 +00:00 |
Arvid Norberg
|
c605c8021f
|
added file priority functions
|
2008-07-20 16:00:08 +00:00 |
Arvid Norberg
|
8c91fff1d6
|
saves torrent settings in resume data (up/down rate limits, max connections, upload slots, paused state, auto managed, piece priorities, renamed files)
|
2008-07-19 11:12:40 +00:00 |
Arvid Norberg
|
8f1455919a
|
disable announce timers when paused
|
2008-07-18 22:57:49 +00:00 |
Arvid Norberg
|
21dff61cb5
|
clears read cache when paused. Saves memory
|
2008-07-18 15:31:22 +00:00 |
Arvid Norberg
|
429a118dd2
|
keep track of interest more tightly. better support for upload_only
|
2008-07-18 10:03:42 +00:00 |
Arvid Norberg
|
e5c8b7c00a
|
fixed issue when trying to announce to tracker for tracker-less torrents
|
2008-07-14 13:09:07 +00:00 |
Arvid Norberg
|
72b99059e7
|
optimized policy::peer
|
2008-07-14 11:15:35 +00:00 |
Arvid Norberg
|
cf9ce06df3
|
fix logging build
|
2008-07-13 20:53:21 +00:00 |
Arvid Norberg
|
d88acd3d95
|
file_progress fix
|
2008-07-13 16:44:14 +00:00 |
Arvid Norberg
|
8fd33d65f1
|
file_progress fix
|
2008-07-13 07:58:32 +00:00 |
Arvid Norberg
|
1ed583011c
|
made the invariant checks cheaper and more useful. The full invariant checks are still available as an option
|
2008-07-12 17:51:59 +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
|
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
|
c5af2c2eaf
|
moved tracker announces into a timer instead of polling every second. Added state to properly send complete, started and stopped events
|
2008-07-12 08:25:19 +00:00 |
Arvid Norberg
|
2435c5f19b
|
increased accuracy of file_progress down to bytes (from 16kB blocks)
|
2008-07-11 14:10:33 +00:00 |
Arvid Norberg
|
96ca475652
|
added redundant and failed byte counters to session
|
2008-07-11 07:30:04 +00:00 |
Arvid Norberg
|
06f3ad65e8
|
fix to file_progress improvement
|
2008-07-09 15:23:42 +00:00 |
Arvid Norberg
|
d06f125513
|
improved accuracy of the file progress report to include completed blocks from incomplete pieces (but not partial blocks)
|
2008-07-09 10:45:07 +00:00 |
Arvid Norberg
|
5c749bcb3c
|
added base class for peer_alerts and turned more alerts into peer_alerts with more information about the peer that generated it
|
2008-07-08 09:30:10 +00:00 |
Arvid Norberg
|
f7042ca84a
|
improved piece timeout and peer snubbing logic
|
2008-07-07 12:04:06 +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
|
ecb538b4b2
|
added alert for torrent state changes. Fixes #360
|
2008-07-03 10:05:51 +00:00 |
Arvid Norberg
|
722e9e95e3
|
frees resume data when done with it
|
2008-07-02 21:23:02 +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
|
ca0f17ee95
|
won't save resume data for torrents without a complete state (checking or queued for checking torrents)
|
2008-06-24 12:48:28 +00:00 |
Arvid Norberg
|
92f13aea68
|
start torrents sooner after they complete checking
|
2008-06-23 18:56:55 +00:00 |
Arvid Norberg
|
87660b96c5
|
renamed announce_piece to piece_passed and moved it to piece_finished and piece_failed
|
2008-06-23 18:54:58 +00:00 |
Arvid Norberg
|
9447693202
|
storage fastresume fix
|
2008-06-23 18:31:52 +00:00 |
Arvid Norberg
|
c210b11b80
|
better fix for failing pieces
|
2008-06-23 14:45:01 +00:00 |
Arvid Norberg
|
6db1b54304
|
simplified policy and optimized case when a piece fails hash check
|
2008-06-22 20:28:03 +00:00 |
Arvid Norberg
|
a60b6f9e96
|
fixed bug in set_queue_position. Fixes #353
|
2008-06-21 15:51:03 +00:00 |
Arvid Norberg
|
d2bde64e71
|
makes sure a torrent doesn't have too many pieces than can be handled. Fixes #61
|
2008-06-19 11:28:34 +00:00 |
Arvid Norberg
|
9c94f54868
|
fixes for torrents with smaller pieces than 16kB
|
2008-06-18 12:34:39 +00:00 |
Arvid Norberg
|
77c13d73f6
|
fixed assert in set_queue_position
|
2008-06-17 16:49:55 +00:00 |
Arvid Norberg
|
24b24aff4e
|
force recheck fixes. Fixes #350
|
2008-06-17 14:56:22 +00:00 |
Arvid Norberg
|
6c24bd0774
|
moves force checked torrents to the end of the queue. Fixes #350
|
2008-06-16 22:27:14 +00:00 |
Arvid Norberg
|
3e000a3984
|
fixed save path updates when moving torrents. Fixes #310
|
2008-06-15 20:52:46 +00:00 |
Andrew Resch
|
933e3c8b54
|
Fixes for set_queue_position()
|
2008-06-11 12:14:10 +00:00 |
Arvid Norberg
|
6e69480176
|
disk_io_thread fixes. Properly destructs torrent objects while disk io mutex is not locked. Properly flushes disk cache when closing, and aborting read and file check jobs. Fixes #334
|
2008-06-09 04:46:34 +00:00 |
Arvid Norberg
|
efcd69b009
|
fixed set_queue_position() for seeding (or finished) torrents
|
2008-06-08 13:47:35 +00:00 |
Andrew Resch
|
3ea075f169
|
Add torrent_resumed alert
|
2008-06-08 05:14:40 +00:00 |
Arvid Norberg
|
a1857f9699
|
added force_recheck to torrent_handle. Fixes #120
|
2008-06-07 16:24:56 +00:00 |
Arvid Norberg
|
9f5fa96cad
|
fixed bug related to m_have_piece optimization. Renamed num_pieces() to num_have() to avoid confusion
|
2008-06-07 14:03:21 +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
|
5d268424b2
|
update auto managed torrents sooner when changes are made
|
2008-06-03 20:21:47 +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
|
3910fe78de
|
separated file_storage from torrent_info and create_torrent
|
2008-05-28 08:44:40 +00:00 |
Arvid Norberg
|
68c31e48dc
|
replaced vector<bool> with a custom bitfield type
|
2008-05-28 02:35:02 +00:00 |
Arvid Norberg
|
4338140c85
|
added test and fixed total_wanted issue for files > 2 GB
|
2008-05-27 08:07:59 +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
|
5840a50d79
|
fixed stale state when switching from finished to downloading
|
2008-05-20 03:21:45 +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
|
c460704a5f
|
streamlined class footprint by reducing padding
|
2008-05-19 02:52:32 +00:00 |
Arvid Norberg
|
282f30c7e7
|
saves number of seeds and downloaders last seen in resume data
|
2008-05-18 19:31:06 +00:00 |
Arvid Norberg
|
ffa9baed1d
|
fixed bug where torrent would not connect to peers unless it had the .torrent
|
2008-05-18 18:30:26 +00:00 |
Arvid Norberg
|
7f639e57de
|
improved error handling with regards to parse_url_components. For trunk, moved that function to its own file
|
2008-05-17 14:19:34 +00:00 |
Arvid Norberg
|
ffbc22dfc2
|
respects the port filter for web seeds. Fixes #304
|
2008-05-15 05:13:09 +00:00 |
Arvid Norberg
|
91d6099a55
|
fixed issue with torrents with 0 pieces. Fixes #306
|
2008-05-15 02:29:26 +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
|
756dbe3316
|
removed leftover from debugging
|
2008-05-12 09:31:57 +00:00 |
Arvid Norberg
|
a01c412f9e
|
piece picker fixes (introduced when rewriting the piece checking)
|
2008-05-12 06:20:54 +00:00 |
Arvid Norberg
|
068adcd9a9
|
indentation fix
|
2008-05-12 06:03:31 +00:00 |
Arvid Norberg
|
f2ac4db1af
|
changed the optimistic disconnect logic to be more efficient and configurable
|
2008-05-12 05:17:11 +00:00 |
Arvid Norberg
|
5741f72ab3
|
seed rank fix
|
2008-05-07 17:05:16 +00:00 |
Arvid Norberg
|
018ec69d8c
|
indentation fix
|
2008-05-06 21:27:06 +00:00 |
Arvid Norberg
|
9429ca4b1f
|
replaced seed cycles with seed rank
|
2008-05-06 18:03:41 +00:00 |
Arvid Norberg
|
e09457e4ab
|
take an estimate of the IP ACK traffic into account when rate limiting (allows setting rate limits closer to the capacity)
|
2008-05-05 17:08:14 +00:00 |
Arvid Norberg
|
c7e6c04705
|
switched over to asio from boost-1.35
|
2008-05-03 16:05:42 +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 |
Andrew Resch
|
05c1a64c76
|
Move the torrent_checked alert post to torrent::files_checked
|
2008-04-23 01:01:00 +00:00 |
Arvid Norberg
|
d4ddf3712a
|
initializes totals to 0 in torrent
|
2008-04-22 22:37:40 +00:00 |
Arvid Norberg
|
a4b69e5b2d
|
logging improvements
|
2008-04-20 17:17:58 +00:00 |
Arvid Norberg
|
b452020404
|
fixed resume data bug
|
2008-04-16 07:51:08 +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
|
644d3aa66c
|
disk IO thread error handling
|
2008-04-13 21:26:57 +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
|
6639f72804
|
if priorities are changed so that the torrent changes state to be finished, a torrent_finished_alert is generated now. Fixes #305
|
2008-04-13 07:39:37 +00:00 |
Arvid Norberg
|
17c4257cce
|
added get_full_peer_list to retrieve all the peers known for a swarm
|
2008-04-13 06:32:48 +00:00 |
Andrew Resch
|
ca872a0e82
|
Revert last.
|
2008-04-13 02:47:41 +00:00 |
Andrew Resch
|
d825c1d5bd
|
Add torrent_resumed torrent alert.
|
2008-04-13 02:34:18 +00:00 |
Arvid Norberg
|
908273a02b
|
fixed assert
|
2008-04-13 01:28:44 +00:00 |
Arvid Norberg
|
d4cfa126aa
|
storage fixes
|
2008-04-12 22:08:07 +00:00 |
Arvid Norberg
|
291ef2a2c9
|
optimized torrent_handle to use a weak_ptr directly to the torrent object
|
2008-04-09 20:09:36 +00:00 |
Arvid Norberg
|
4eeb15c1df
|
verifies urls before connecting to web seeds. Fixes #301
|
2008-04-09 07:51:41 +00:00 |
Arvid Norberg
|
04a9dd77b5
|
assert fix
|
2008-04-07 08:15:31 +00:00 |
Arvid Norberg
|
89a9a25197
|
exception fixes in torrent
|
2008-04-07 02:51:21 +00:00 |
Arvid Norberg
|
35fd9aec61
|
msvc build fixes and warning fixes
|
2008-04-05 21:18:27 +00:00 |
Arvid Norberg
|
54bd1a41b0
|
fix to recent change to move out references to self() from peer_connection constructors
|
2008-04-01 19:17:09 +00:00 |
Arvid Norberg
|
4161be867e
|
removed dht ping from peer_from_tracker. in trunk: implemented a rate limited DHT ping (once a second per torrent) and space optimized the peer structure
|
2008-04-01 17:38:19 +00:00 |
Arvid Norberg
|
1511f2f59b
|
removed calls to self() from inside constructors in peer connections
|
2008-03-31 04:46:24 +00:00 |
Arvid Norberg
|
57cd1e7c97
|
fixed #298. Generates a torrent_paused alert when there's no storage
|
2008-03-30 15:44:31 +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
|
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
|
537f21d1b9
|
connection rate improvement when using a half-open connections limit
|
2008-03-16 10:49:47 +00:00 |
Arvid Norberg
|
2cfbfd203f
|
made tests build and pass in trunk. fixed issues in trunk revealed by the tests. fixed failing torrent invariant check in trunk and rc0.13
|
2008-03-14 10:17:27 +00:00 |