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
|
af25f26538
|
correction of previous 'assert fix'
|
2009-06-12 16:12:19 +00:00 |
Arvid Norberg
|
cf8659a0af
|
fixed typo
|
2009-06-12 06:28:18 +00:00 |
Arvid Norberg
|
7b6261a63a
|
fixed piece picker assert (would change the peer_count for pieces we have, and assert on them)
|
2009-06-12 06:20:08 +00:00 |
Arvid Norberg
|
3e23029670
|
removed incorrect assert
|
2009-06-11 06:35:00 +00:00 |
Arvid Norberg
|
5e87420b6f
|
set all piece priorities to 0 when a write fails
|
2009-06-10 09:20:55 +00:00 |
Arvid Norberg
|
6b908e5f3f
|
fixed compile warnings
|
2009-06-10 08:42:05 +00:00 |
Arvid Norberg
|
f0134c1b11
|
improved disk error handling and expanded use of error_code in error reporting
|
2009-06-10 08:30:55 +00:00 |
Arvid Norberg
|
4554e06837
|
fixed bug when setting unlimited upload or download rates for torrents
|
2009-06-09 19:33:18 +00:00 |
Arvid Norberg
|
d263526246
|
make incoming connections considered connectable when they tell us their listen port
|
2009-06-09 16:33:10 +00:00 |
Arvid Norberg
|
cfbcacce79
|
fixed bug when handling malformed webseed urls and an http proxy
|
2009-06-09 16:00:10 +00:00 |
Arvid Norberg
|
8256a5628d
|
fixed typo when using TORRENT_USE_OPENSSL
|
2009-06-09 15:43:56 +00:00 |
Arvid Norberg
|
33768fa282
|
fixed deadlock in http_tracker_connection
|
2009-06-09 05:51:10 +00:00 |
Arvid Norberg
|
18bc7c3fc7
|
fixed deadlock
|
2009-06-09 05:48:38 +00:00 |
Arvid Norberg
|
7eb78298f3
|
fixed windows build issue in file, as well as expanded the comment at the static assert
|
2009-06-09 05:46:51 +00:00 |
Arvid Norberg
|
e438a3ccfc
|
more boost-1.34.1 fixes
|
2009-06-03 07:46:50 +00:00 |
Arvid Norberg
|
a9a12a2391
|
fix build with boost-1.34.1
|
2009-06-03 07:22:43 +00:00 |
Arvid Norberg
|
a061592619
|
udp_socket fix
|
2009-05-31 23:48:24 +00:00 |
Arvid Norberg
|
bd33814376
|
improve disk error handling
|
2009-05-31 22:41:53 +00:00 |
Arvid Norberg
|
0283f07aed
|
more buffer categories to help debugging
|
2009-05-31 22:38:49 +00:00 |
Arvid Norberg
|
b2c5d8a563
|
include the piece index that failed in disk errors
|
2009-05-31 19:44:56 +00:00 |
Arvid Norberg
|
3e7bd46706
|
fixed handling of unaligned block requests
|
2009-05-31 19:33:54 +00:00 |
Arvid Norberg
|
524151c040
|
don't make more calls to the disk thread when aborting
|
2009-05-31 19:25:26 +00:00 |
Arvid Norberg
|
6b4fcfcd38
|
fixed assert
|
2009-05-31 10:43:29 +00:00 |
Arvid Norberg
|
d45e6cb118
|
fix bug in disk_io_thread
|
2009-05-31 10:15:45 +00:00 |
Arvid Norberg
|
177a7e881c
|
fixed handling of dropped request
|
2009-05-31 05:50:07 +00:00 |
Andrew Resch
|
d230dfaf3a
|
Fix upnp when checking for "http://" in control_url there is an improper substr call
|
2009-05-31 02:41:59 +00:00 |
Arvid Norberg
|
9effe8a54a
|
fixed deadlock in http_connection. added two error codes for that class. Added more documentation on error_code
|
2009-05-30 18:50:38 +00:00 |
Arvid Norberg
|
31cae31ccc
|
fix invariant check failure
|
2009-05-30 04:27:26 +00:00 |
Arvid Norberg
|
d25d09cb70
|
fixed assert in peer_connection invariant check
|
2009-05-30 04:03:57 +00:00 |
Arvid Norberg
|
bc83387583
|
fix uninitialized variable in disk_io_thread
|
2009-05-30 04:02:03 +00:00 |
Arvid Norberg
|
745a16ec09
|
watchdog for stalled queued checking torrents
|
2009-05-30 02:38:34 +00:00 |
Arvid Norberg
|
eb2203abf5
|
fixed torrent file path vulnerability
|
2009-05-28 07:25:09 +00:00 |
Arvid Norberg
|
3ea52b240f
|
fixed memory leak in disk cache
|
2009-05-28 01:19:48 +00:00 |
Andrew Resch
|
6242ae051e
|
added ability to give seeding torrents preference to active slots
|
2009-05-27 19:27:12 +00:00 |
Arvid Norberg
|
065bd283cf
|
timer fixes
|
2009-05-27 17:06:50 +00:00 |
Arvid Norberg
|
c66dda1c9f
|
fixed bug in disk cache flush, largest contiguous function
|
2009-05-27 16:50:46 +00:00 |
Arvid Norberg
|
e744174f9a
|
removed dead code
|
2009-05-27 16:49:28 +00:00 |
Arvid Norberg
|
64c8834fbb
|
updated tuning document for seed boxes
|
2009-05-27 06:37:45 +00:00 |
Daniel Wallin
|
bcfe8cbf2d
|
Fix #ifdef typo.
|
2009-05-26 18:20:32 +00:00 |
Arvid Norberg
|
7b8ac7276c
|
added some more asserts around m_outstanding_bytes
|
2009-05-26 16:12:09 +00:00 |
Arvid Norberg
|
f05777c2c2
|
fixed shutdown issue when trackers times out (introduced with the timer optimization)
|
2009-05-25 23:12:06 +00:00 |
Arvid Norberg
|
c695729bbe
|
fixed bug when force-checking a torrent with partial pieces
|
2009-05-25 20:31:20 +00:00 |
Arvid Norberg
|
efb6ec5824
|
fixed expensive-invariant-checks build
|
2009-05-25 17:23:03 +00:00 |
Daniel Wallin
|
757b0437e9
|
Don't construct a temporary peer just for searching. Clean up some duplicate code.
|
2009-05-25 10:15:35 +00:00 |
Arvid Norberg
|
2cfb4e8205
|
printf formatting fixes
|
2009-05-25 08:55:43 +00:00 |
Arvid Norberg
|
9f7104b2d5
|
fixed makefiles
|
2009-05-25 07:47:24 +00:00 |
Arvid Norberg
|
bb47b2924c
|
fix coalesce reads and writes setting
|
2009-05-25 07:46:31 +00:00 |
Arvid Norberg
|
aa02e36327
|
retry web seeds when name lookup fails instead of discarding them
|
2009-05-25 07:04:14 +00:00 |
Arvid Norberg
|
30c704523c
|
caches the time every 100 ms and use the cache where high resolution timer is not needed
|
2009-05-25 02:45:51 +00:00 |
Daniel Wallin
|
68629eb6bc
|
Split peer list into IPv4 and IPv6 peers. Saves 12 bytes per IPv4 peer.
|
2009-05-24 21:49:19 +00:00 |
Arvid Norberg
|
2f627a4b00
|
attempt to mitigate read cache thrashing
|
2009-05-24 16:49:01 +00:00 |
Arvid Norberg
|
29d56f9a8b
|
improved read cache memory utilization
|
2009-05-24 15:32:14 +00:00 |
Arvid Norberg
|
a89d6cced1
|
clean up some disk cache duplication of logic and added another memory usage optimization for the write cache
|
2009-05-24 00:12:53 +00:00 |
Arvid Norberg
|
6b2148cb39
|
removed redundant code
|
2009-05-23 21:42:29 +00:00 |
Arvid Norberg
|
e3c07c0934
|
converted some recursive mutexes to regular ones
|
2009-05-23 21:36:09 +00:00 |
Arvid Norberg
|
ae8488fb91
|
improved read cache memory efficiency
|
2009-05-23 19:27:27 +00:00 |
Arvid Norberg
|
e322b318ae
|
improved handling of out-of-memory conditions in disk I/O thread
|
2009-05-23 18:39:55 +00:00 |
Arvid Norberg
|
e197f5cb85
|
disk_io_thread assert fixes
|
2009-05-23 17:17:47 +00:00 |
Arvid Norberg
|
5fbff8e060
|
fixed a bug when checking a torrent twice
|
2009-05-23 15:58:32 +00:00 |
Arvid Norberg
|
f9c12ef589
|
added more disk io asserts
|
2009-05-23 15:50:38 +00:00 |
Arvid Norberg
|
c1d9198dc3
|
added largest_contiguous cache flush algorithm
|
2009-05-23 07:35:45 +00:00 |
Arvid Norberg
|
1392b14fec
|
fixed disk_io error handling bugs
|
2009-05-23 03:05:21 +00:00 |
Arvid Norberg
|
e36ea4ba5d
|
added instrumentation for disk access. Useful to benchmark disk cache performance
|
2009-05-23 03:03:52 +00:00 |
Arvid Norberg
|
0127edac14
|
added disk-checking delay, to leave room for other disk operations while checking a torrent
|
2009-05-22 06:32:39 +00:00 |
Arvid Norberg
|
11e97842da
|
changed the optimistic disconnect implementation to be slightly more efficient
|
2009-05-22 06:27:47 +00:00 |
Arvid Norberg
|
292c7f61a1
|
revert and do what the previous check-in was supposed to do
|
2009-05-22 03:36:05 +00:00 |
Arvid Norberg
|
065c33969a
|
promoted an expensive invariant check to only be built with full invariant checks
|
2009-05-22 03:26:24 +00:00 |
Arvid Norberg
|
cb9c3cb37d
|
memory optimization for checking torrents
|
2009-05-21 16:15:05 +00:00 |
Daniel Wallin
|
6014ac1e7a
|
Allocate memory for read/write handlers inplace inside peer_connection instance.
|
2009-05-20 08:57:08 +00:00 |
Arvid Norberg
|
98ee6daddc
|
fixed shadowing variable bug
|
2009-05-19 22:22:22 +00:00 |
Arvid Norberg
|
e7d6c9cd3c
|
fixed printf formatting issue
|
2009-05-19 20:53:27 +00:00 |
Arvid Norberg
|
c047f66454
|
improved disk buffer logging and added extra asserts when logging disk buffer stats
|
2009-05-19 07:00:05 +00:00 |
Arvid Norberg
|
ad157d49d2
|
fixed bug that prevented buffer optimization
|
2009-05-19 06:51:30 +00:00 |
Arvid Norberg
|
536d1e2cf6
|
removed assert in policy
|
2009-05-16 02:38:53 +00:00 |
Arvid Norberg
|
a2668d9b1b
|
optimized memory usage when checking files fails
|
2009-05-16 02:25:28 +00:00 |
Arvid Norberg
|
5bce212126
|
fixed incoming peer source flag and exposed it in client_test
|
2009-05-15 23:22:11 +00:00 |
Arvid Norberg
|
a51dfa50f5
|
renamed peer_from_tracker to add_peer
|
2009-05-15 22:07:19 +00:00 |
Arvid Norberg
|
437cb94fd0
|
improved IPv6 support by announcing twice when necessary
|
2009-05-15 21:23:41 +00:00 |
Arvid Norberg
|
81af5d52fb
|
fixed broken url generation in tracker announce
|
2009-05-15 16:31:47 +00:00 |
Arvid Norberg
|
53f890608d
|
use C99 string formatting macros for platform independence
|
2009-05-15 15:52:15 +00:00 |
Arvid Norberg
|
6e39f24dcf
|
optimized http tracker url construction by moving most of it over to snprintf
|
2009-05-14 22:10:00 +00:00 |
Arvid Norberg
|
1eda63c4f5
|
avoid using ' in peer ids, since there are buggy trackers that don't support it
|
2009-05-14 21:07:49 +00:00 |
Arvid Norberg
|
c459262c51
|
exception and IPv6 fixes
|
2009-05-14 20:38:42 +00:00 |
Arvid Norberg
|
890811dcc3
|
added missing include
|
2009-05-14 20:31:44 +00:00 |
Arvid Norberg
|
31c422df0a
|
added feature to set a separate global rate limit for local peers
|
2009-05-14 17:21:19 +00:00 |
Arvid Norberg
|
28c334fb35
|
web_peer_connection statistics fix
|
2009-05-13 23:02:08 +00:00 |
Arvid Norberg
|
00ccf9064e
|
optimized memory usage in the DHT, and added some handling for out-of-memory cases
|
2009-05-13 22:18:41 +00:00 |
Arvid Norberg
|
bdd7e21831
|
replace endpoint with address in DHT node ban list
|
2009-05-13 21:07:51 +00:00 |
cg25
|
7038dd3cd7
|
fix src/Makefile.am against socks4_stream.cpp
|
2009-05-13 20:52:20 +00:00 |
Arvid Norberg
|
062e1796c0
|
fixed crash when shutting down while checking a torrent
|
2009-05-13 17:17:33 +00:00 |
Arvid Norberg
|
c8066aabd8
|
fixed policy::peer cast bug (introduced when optimizing the peer allocation)
|
2009-05-13 16:14:20 +00:00 |
Arvid Norberg
|
b7c5d2f12d
|
add a separate setting for max peer list size for paused torrents
|
2009-05-13 01:34:10 +00:00 |
Arvid Norberg
|
8e3bd5154a
|
removed iostream and boost-regex dependency in client_test
|
2009-05-13 01:02:06 +00:00 |
Arvid Norberg
|
85bf463e11
|
added session setting to control disk buffer pool allocation sizes
|
2009-05-12 18:52:05 +00:00 |
Arvid Norberg
|
46c286eea3
|
assert fixes
|
2009-05-12 18:24:16 +00:00 |
Arvid Norberg
|
649f95c932
|
added session_settings presets for low memory usage and seed box environments
|
2009-05-12 18:05:04 +00:00 |
Arvid Norberg
|
d5164b1b1e
|
fixed typo. made it possible to set max_outstanding_disk_bytes_per_connection to 0
|
2009-05-12 17:57:52 +00:00 |
Arvid Norberg
|
039ee486af
|
use alloca for iovec arrays
|
2009-05-12 17:56:12 +00:00 |
Arvid Norberg
|
89e4c41ea2
|
fixed indentation
|
2009-05-11 21:19:03 +00:00 |
Arvid Norberg
|
92f42eb23c
|
fixed move_stororage to handle the case where it fails
|
2009-05-11 21:18:09 +00:00 |
Arvid Norberg
|
136f101449
|
when reaching peer list size limit, rank peers to be removed. Fix for updating IP filter
|
2009-05-11 20:23:47 +00:00 |
Arvid Norberg
|
a14bc56520
|
fixed bug in smart_ban (introduced when policy::peer allocation was changed)
|
2009-05-10 17:25:29 +00:00 |
Arvid Norberg
|
9523d88909
|
made file_pool use std::map instead of multi-index, and use std::string::operator< instead of the quite inefficient filesystem::path::operator<
|
2009-05-09 21:11:25 +00:00 |
Arvid Norberg
|
1eb2799a03
|
added more allocation logging for statistics builds. Identified and fixed some memory waste
|
2009-05-07 20:30:20 +00:00 |
Arvid Norberg
|
0aa477ce54
|
handle web seed urls that don't end with / when they should
|
2009-05-07 20:27:07 +00:00 |
Arvid Norberg
|
a961e253ef
|
fix logging build
|
2009-05-07 16:30:14 +00:00 |
Arvid Norberg
|
d0786a0fde
|
added BOOST_NO_EXCEPTIONS ifdefs
|
2009-05-07 07:01:36 +00:00 |
Arvid Norberg
|
d0d2328288
|
fixed indentation
|
2009-05-07 06:47:19 +00:00 |
Arvid Norberg
|
838df44184
|
documented file_rename_failed_alert and file_renamed_alert. they were previously not documented. Fixed bug where the storage would be left in an error state (and eventually pause the torrent) when a rename_file() failed. The error is now only reported back through the alert
|
2009-05-07 06:41:41 +00:00 |
Arvid Norberg
|
bc20af9375
|
ban self-connections, in order to not try them again
|
2009-05-07 05:10:19 +00:00 |
Arvid Norberg
|
c8176cca55
|
optimized peer storage in resume data an in memory. Should use far less memory than previously for the peer list. Introduced peer source affinity, to avoid problem with a peer list that's diluted with stale peers
|
2009-05-06 22:36:24 +00:00 |
Arvid Norberg
|
ea91a6e077
|
fixed inverted peer connect rank. Used to connect to the least likely to work peer, instead of the most likely
|
2009-05-06 22:31:17 +00:00 |
Arvid Norberg
|
ff3db926fb
|
allocates 10 disk buffers at a time instead of 32. Fixed bug where connection candidates would be too high
|
2009-05-06 07:06:26 +00:00 |
Arvid Norberg
|
6c03035aa0
|
added total number of peers logging to session statistics
|
2009-05-04 06:56:29 +00:00 |
Arvid Norberg
|
cf6dc377c9
|
define fixes for disk stats build configurations
|
2009-05-04 06:42:24 +00:00 |
Arvid Norberg
|
89ac9916d7
|
replaced std::set with std::vector for accept fast piece list
|
2009-05-04 00:08:00 +00:00 |
Arvid Norberg
|
641abc6c4a
|
slight memory optimization and some header cleanup
|
2009-05-03 20:21:24 +00:00 |
Arvid Norberg
|
f2ec6b5adb
|
added option to use a single block buffer when hashing, instead of for the entire piece
|
2009-05-03 19:09:06 +00:00 |
Arvid Norberg
|
d73c97e444
|
made get_download_queue() use considerably less memory and scale with larger piece_sizes
|
2009-05-03 09:45:07 +00:00 |
Arvid Norberg
|
7563ba87b5
|
added comments to #endifs
|
2009-05-03 06:57:58 +00:00 |
Arvid Norberg
|
c71100950b
|
fix to recalculate_connect_candidates
|
2009-05-03 06:57:04 +00:00 |
Arvid Norberg
|
7439ca3277
|
add an invariant check for num_connect_candidate in policy
|
2009-05-03 03:41:33 +00:00 |
Arvid Norberg
|
807c1fc397
|
added validation check to disk_buffer_pool (and disk_io_thread in 0.14). This should catch any reference to the disk_io_thread after it has been destructed
|
2009-05-03 03:16:15 +00:00 |
Arvid Norberg
|
b75648445e
|
fixed magnet link parser to accept hex encoded info-hashes
|
2009-05-02 18:36:51 +00:00 |
Arvid Norberg
|
76ce836fb9
|
magnet link fix
|
2009-05-02 08:06:37 +00:00 |
Arvid Norberg
|
e4ddb13b6f
|
made the cache_size setting include send and receive buffers
|
2009-05-02 06:52:57 +00:00 |
Arvid Norberg
|
06b609aa1f
|
fixed unchoke bug. made the automatic unchoke strategy the default
|
2009-05-02 03:15:52 +00:00 |
Arvid Norberg
|
033fd5bd22
|
count send and receive buffers against the cache size limit
|
2009-05-01 08:00:58 +00:00 |
Arvid Norberg
|
84dda7b617
|
support for adjusting the socket buffer sizes through session_settings
|
2009-05-01 04:59:15 +00:00 |
Arvid Norberg
|
6ca1c191b6
|
some windows fixes for dynamic linking
|
2009-04-30 17:30:14 +00:00 |
Arvid Norberg
|
3cf34e3a91
|
greatly optimised memory usage for peer list
|
2009-04-30 05:49:46 +00:00 |
Arvid Norberg
|
c7dd73dd08
|
add asserts to catch negative m_outstanding_bytes
|
2009-04-26 19:44:08 +00:00 |
Arvid Norberg
|
5fc239bd23
|
ignore empty strings when passed as a tracker url to the torrent constructor
|
2009-04-26 19:16:55 +00:00 |
Arvid Norberg
|
3ecbcc8fe7
|
filters trackers with empty url fields
|
2009-04-26 08:05:42 +00:00 |
Arvid Norberg
|
86a3bf3e07
|
fixed assert when adding a torrent with resume data and immediately setting all piece priorities to 0
|
2009-04-26 07:31:26 +00:00 |
Arvid Norberg
|
6c972e03a4
|
fixed corruption of the connection queue when a peer_connection fails immediately in its connect() function
|
2009-04-26 02:46:10 +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
|
b324d4a190
|
fixed potential buffer overrun in verbose logging builds
|
2009-04-25 18:39:44 +00:00 |
Arvid Norberg
|
6b69f1d8c4
|
fixed crash when shutting down while checking a torrent
|
2009-04-25 08:45:13 +00:00 |
Arvid Norberg
|
fba4ae541c
|
fixed invalid iterator access in debug mode
|
2009-04-25 08:19:21 +00:00 |
Arvid Norberg
|
679a594f4e
|
fixed typo in verbose bandwidth logging
|
2009-04-24 17:40:40 +00:00 |
Arvid Norberg
|
9ea68dbb9c
|
fixed bug where an asio exception could be thrown when resolving peer countries
|
2009-04-24 17:29:57 +00:00 |
Arvid Norberg
|
4476a44160
|
fixed debug logging bug
|
2009-04-24 17:04:20 +00:00 |
Arvid Norberg
|
4421ccf11c
|
fixed missed spot in safe_convert -> convert_to_wstring rename
|
2009-04-24 08:33:23 +00:00 |
Arvid Norberg
|
73f4b06100
|
fixed merge error
|
2009-04-22 17:56:19 +00:00 |
Arvid Norberg
|
3c51ceb7c5
|
fixed bug when receiving keepalive message
|
2009-04-21 19:27:52 +00:00 |
Andrew Resch
|
4137f47386
|
Do not set an error when pausing a checking torrent
|
2009-04-19 19:49:33 +00:00 |
Arvid Norberg
|
dd67612e9b
|
fixed assert when receiving invalid piece
|
2009-04-17 17:56:58 +00:00 |
Arvid Norberg
|
509c8ed402
|
timed_wait does not seem to work as expected, revert to regular wait()
|
2009-04-15 16:32:05 +00:00 |