Arvid Norberg
7d6a895d1b
makes all tracker requests 'stopped' when aborting
2008-08-11 14:31:58 +00:00
Arvid Norberg
679b1ff675
added LeechCraft to identify client
2008-08-10 20:18:18 +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
8488d5eb59
fixed bug in disk_io_thread read cache management
2008-08-07 12:30:36 +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
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
6b2338c5dd
fix piece_picker piece-shuffle bug
2008-07-31 09:19:52 +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
58978048e8
fixed assert in disk_io_thread
2008-07-30 08:05:04 +00:00
Arvid Norberg
a8562a9f19
small optimization of expensive invariant check
2008-07-30 06:42:08 +00:00
Arvid Norberg
eccba2072c
exclude print_pieces() from build unless PICKER_LOG is enabled
2008-07-30 06:39:37 +00:00
Andrew Resch
d40b8df393
Fix building with gcc 4.3
2008-07-30 05:44:50 +00:00
Arvid Norberg
43dd90bb59
don't set executable permission of files
2008-07-22 13:02:06 +00:00
Arvid Norberg
b32aa520c2
delete_files bug fix
2008-07-20 17:38:59 +00:00
Arvid Norberg
5ad495865e
fixed bug in windows path of file.cpp
2008-07-20 16:34:01 +00:00
Arvid Norberg
c605c8021f
added file priority functions
2008-07-20 16:00:08 +00:00
Arvid Norberg
417855848f
merged file_win.cpp and file.cpp (removed the need for file_win.cpp). The file is no longer a pimpl
2008-07-20 11:14:54 +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
d4ee273573
fix print out issue in lazy_entry
2008-07-19 09:45:56 +00:00
Arvid Norberg
7607034ab6
exposed upload_only in peer_info
2008-07-19 07:57:43 +00:00
Arvid Norberg
49e76f510f
stop scraping torrents when session is paused
2008-07-19 07:45:15 +00:00
Arvid Norberg
4597de74df
removed incorrect assert
2008-07-19 07:35:24 +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
d17d7d7b3f
added missing file error_code.cpp
2008-07-18 14:41:08 +00:00
Arvid Norberg
64727894c4
set all permission bits on files and let umask handle reducing permissions
2008-07-18 14:15:18 +00:00
Arvid Norberg
db4001e406
fixed file checking bug where the files on disk wouldn't even be inspected
2008-07-18 13:51:26 +00:00
Arvid Norberg
3b35b2c2e3
added dict_find_string to lazy_entry
2008-07-18 13:48:09 +00:00
Arvid Norberg
2ab80ddc3a
moved the error_category to error_code.cpp and added the new files (error_code.{hpp|.cpp}) to the Jamfile and makefiles
2008-07-18 10:22:16 +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
84406e2064
excluded mapped_storage from build
2008-07-18 00:21:51 +00:00
Arvid Norberg
3cb1369385
improved error reporting of file errors (uses boost.system's error_code). Now permission errors are properly reported when checking files
2008-07-17 23:41:46 +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
5bf38323c1
removed invariant check that can get triggered in peer_connection::snub_peer
2008-07-13 08:06:24 +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
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
535aaf8182
fix to previous parole fix
2008-07-11 09:25:03 +00:00
Arvid Norberg
589e098002
fixed parole mode with timeouts and made it optional
2008-07-11 09:23:22 +00:00
Arvid Norberg
5e48b63ede
removed hard coded file permission bits
2008-07-11 08:53:33 +00:00
Arvid Norberg
96ca475652
added redundant and failed byte counters to session
2008-07-11 07:30:04 +00:00
Arvid Norberg
680dab5a67
make 'snubbed' more sticky by only giving one request_timeout back when a new block is being received
2008-07-10 19:31:22 +00:00
Arvid Norberg
1bdb6afebd
fixes to previous connection timeout check-in
2008-07-10 10:58:30 +00:00
Arvid Norberg
d2c53b50d5
timeout incoming connections
2008-07-10 10:35:11 +00:00
Arvid Norberg
d51bdc0ec0
rare request optimization
2008-07-09 18:01:00 +00:00
Arvid Norberg
22da6b5901
fixed bug where FAST pieces were cancelled when choking
2008-07-09 17:45:37 +00:00
Arvid Norberg
74fd7eea71
fixed alert posting typo
2008-07-09 17:40:03 +00:00
Arvid Norberg
fc3bb01587
ignore zero size piece messages
2008-07-09 17:37:38 +00:00
Arvid Norberg
06f3ad65e8
fix to file_progress improvement
2008-07-09 15:23:42 +00:00
Arvid Norberg
2d099b090f
peer snubbing fix
2008-07-09 11:11:06 +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
63d4e0d4a3
invariant check fix
2008-07-08 21:33:36 +00:00
Arvid Norberg
55a944c014
added a unwanted_block_alert
2008-07-08 18:41:04 +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
8d4bea9f95
fixed invariant check that could be triggered since peer snubbing was introduced
2008-07-08 08:13:45 +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
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
d2b37572fa
disable endpoint sorting in http_connection for msvc, since it ICEs the compiler. Fixes #361
2008-07-03 10:05:19 +00:00
Arvid Norberg
66a7f98d84
fixed missing torrent error state
2008-07-02 21:27:16 +00:00
Arvid Norberg
722e9e95e3
frees resume data when done with it
2008-07-02 21:23:02 +00:00
Arvid Norberg
ac6dfa9ea3
factored out constants to enums in lazy_bdecode
2008-07-02 21:19:50 +00:00
Arvid Norberg
0ec6753028
fix build
2008-07-01 22:44:17 +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
b354e7e0d9
fixed bug in extension loop
2008-07-01 20:22:25 +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
a71170e601
switched over pex parsing to use lazy_bdecode
2008-07-01 09:02:03 +00:00
Arvid Norberg
10f5418ce7
switched extension handshake parsing over to use lazy_bdecode for improved performance
2008-07-01 08:04:12 +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
0e1d2ede70
fix invariant-check bug in peer_connection
2008-06-30 07:58:50 +00:00
Arvid Norberg
d396ab7b17
added pause and resume to the session. Fixes #349
2008-06-29 19:08:30 +00:00
Arvid Norberg
8f1abd9dbe
fix bug in previous check-in
2008-06-29 18:03:38 +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
ae9f1e0465
fixed typo
2008-06-29 06:01:20 +00:00
Arvid Norberg
d1b2cd558e
moved peer time out logic to second tick
2008-06-29 05:35:48 +00:00
Arvid Norberg
d132dd45e3
removed exceptions from pe_crypto and improved error handling
2008-06-28 10:10:05 +00:00
Arvid Norberg
ae1af66724
fixed typo. Fixes #355
2008-06-27 09:44:14 +00:00
Arvid Norberg
ce99813b48
fix binary file mode in torrent_info. Fixes #354
2008-06-27 09:41:08 +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
148640f1ac
fix natpmp stall at shutdown
2008-06-24 13:52:14 +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
84221e05f8
checking torrents fix when aborting session
2008-06-24 12:17:42 +00:00
Arvid Norberg
4d380c57d7
made bdecode not throw
2008-06-23 22:00:27 +00:00
Arvid Norberg
92f13aea68
start torrents sooner after they complete checking
2008-06-23 18:56:55 +00:00
Arvid Norberg
a38d97583e
removed old comment
2008-06-23 18:56:02 +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
964e8b93d0
added option to deliberately corrupt data from certain peers, to test the case when hash fails occurs
2008-06-23 15:37:24 +00:00
Arvid Norberg
c210b11b80
better fix for failing pieces
2008-06-23 14:45:01 +00:00
Arvid Norberg
665d508bc3
piece picker fix
2008-06-23 13:02:41 +00:00
cg25
71c4f6f9b6
* improved --with-asio configure option behaviour;
...
* using -version-info flag instead of -revision one for the sake of correct
interface versioning;
* renaming library to libtorrent-rasterbar.so to avoind conflicting with other
libraries.
2008-06-23 00:09:12 +00:00
Arvid Norberg
811d0a6250
storage fast resume check fix
2008-06-22 23:41:03 +00:00
cg25
aeb2dd8c71
Fix mistypo in src/piece_picker.cpp from previous commit.
2008-06-22 23:13:27 +00:00
Andrew Resch
402da3c77c
Make active_limit == -1 mean unlimited
2008-06-22 22:49:18 +00:00
Arvid Norberg
f7e1d1c1fd
piece picker fix
2008-06-22 22:00:44 +00:00
Arvid Norberg
e4269ddcce
fix smart ban assert when closing a torrent with a failing piece
2008-06-22 20:30:43 +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
0f0ea269bc
added an active torrent limit
2008-06-21 12:31:28 +00:00
Arvid Norberg
d0e579826c
added an option to not count inactive torrents against the limits for auto managed torrents
2008-06-21 09:15:29 +00:00
Arvid Norberg
b183b2e593
made it possible to export the upnp state and insert it into a different upnp instance
2008-06-20 16:14:10 +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
18809681be
fix bug in self connect detection
2008-06-18 13:31:41 +00:00
Arvid Norberg
7fe6c474ce
fix auto manage bug related to checking torrents
2008-06-18 13:02:03 +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
Andrew Resch
d70ec645d7
Make 'active_seeds' and 'active_downloads' use -1 as unlimited
2008-06-17 15:44:04 +00:00
Arvid Norberg
24b24aff4e
force recheck fixes. Fixes #350
2008-06-17 14:56:22 +00:00
Arvid Norberg
0241bf78ce
added is_sequential_download to torrent_handle
2008-06-17 08:30:04 +00:00
Arvid Norberg
b55670aa14
fixed typo
2008-06-16 22:33:42 +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
9a8fc4f713
self connection fixes
2008-06-16 13:54:14 +00:00
Arvid Norberg
41f241b476
min reconnect time fix
2008-06-16 07:46:40 +00:00
Arvid Norberg
3e000a3984
fixed save path updates when moving torrents. Fixes #310
2008-06-15 20:52:46 +00:00
roman_rybalko
5314b639e2
boost detection fixes: now able to launch with boost1.34 and boost1.35
2008-06-13 12:20:55 +00:00
Arvid Norberg
7df5d4a9c6
changed queuing logic
2008-06-13 05:11:36 +00:00
Arvid Norberg
af477fa266
fixed connect candidate assert
2008-06-13 04:50:02 +00:00
Arvid Norberg
5923ef5b43
fixed file check ordering to respect the queue position. Fixes #350
2008-06-12 21:22:24 +00:00
Arvid Norberg
295e2a548b
piece picker fix of recent change.
2008-06-12 15:40:50 +00:00
Arvid Norberg
6db61166be
recalculate queued torrents sooner when changing queuing settings
2008-06-12 06:58:42 +00:00
Arvid Norberg
d47ec46e76
storage wpath fix (for unicode)
2008-06-12 04:52:37 +00:00
Arvid Norberg
52f6204288
simplified the disk-io mutexes and made it more efficient. separated the disk io mutex into a buffer mutex, queue mutex and the piece cache mutex.
2008-06-12 04:40:37 +00:00
Andrew Resch
933e3c8b54
Fixes for set_queue_position()
2008-06-11 12:14:10 +00:00
Arvid Norberg
a4dfd63ca3
fixed piece picker bug related to sequential download, added unit test to expose it
2008-06-11 08:30:06 +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
0afe661d5a
fixed http_connection assert
2008-06-07 17:47:05 +00:00
Arvid Norberg
a1857f9699
added force_recheck to torrent_handle. Fixes #120
2008-06-07 16:24:56 +00:00
Arvid Norberg
76ee7b6297
fixed connect candidate counter
2008-06-07 14:22:24 +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
59c8a74ba8
in case a regular rename fails, try to copy the storage to the new location. Fixes #231
2008-06-05 16:56:39 +00:00
Arvid Norberg
4709d202e1
fixed unicode issue in storage
2008-06-04 07:57:07 +00:00
Arvid Norberg
5d268424b2
update auto managed torrents sooner when changes are made
2008-06-03 20:21:47 +00:00
Arvid Norberg
8b5172d439
fixed exception issue when tracker sends invalid response
2008-06-03 20:03:51 +00:00