Arvid Norberg
|
9964b9cdb6
|
support a separate option to use proxies for peers or not
|
2011-01-24 03:24:28 +00:00 |
Arvid Norberg
|
2732a6bc47
|
move alert queue size limit into session_settings. make some alerts non-discardable (don't throw them out, even when the queue is full). Make session pause also pause all checking files. optimize rejecting incoming connections when the session is paused
|
2011-01-23 18:00:52 +00:00 |
Arvid Norberg
|
021a774168
|
rate limit outstanding-disk performance warnings. don't throttle reading form peers because of disk congestion if the peer isn't downloading payload. Don't time out peers that are not waiting on the network
|
2011-01-23 02:09:54 +00:00 |
Arvid Norberg
|
de28a57954
|
add back version in DHT packets
|
2011-01-23 02:02:04 +00:00 |
Arvid Norberg
|
1dc0e71716
|
added torrent_error_alert when a torrent encounters an error
|
2011-01-22 19:06:43 +00:00 |
Arvid Norberg
|
6663f527da
|
fixed error handling in torrent_info constructor
|
2011-01-19 10:07:51 +00:00 |
Arvid Norberg
|
ed39e3c307
|
make electric fence happy by not allocating 0 bytes
|
2011-01-19 08:41:39 +00:00 |
Arvid Norberg
|
35aaec3b38
|
fix read buffer bug in udp_socket
|
2011-01-19 07:16:45 +00:00 |
Arvid Norberg
|
ba0aed2282
|
initial support for DHT RSS feeds
|
2011-01-19 05:57:44 +00:00 |
Arvid Norberg
|
c223291fb4
|
added support for RSS feeds
|
2011-01-18 03:41:54 +00:00 |
Arvid Norberg
|
eec2672d26
|
fixed up some edge cases in DHT routing table and improved unit test of it. Primarily fixed issues where an IP could take over someone elses node ID and where an IP would change its node ID
|
2011-01-17 07:49:44 +00:00 |
Arvid Norberg
|
baffe32942
|
debug logging fix
|
2011-01-16 22:28:31 +00:00 |
Arvid Norberg
|
a2df36afcd
|
fix typo
|
2011-01-16 20:46:17 +00:00 |
Arvid Norberg
|
f6a32d0f25
|
use memcpy() instead of std::memcpy()
|
2011-01-16 20:45:18 +00:00 |
Arvid Norberg
|
e31aceeda4
|
added error category and error codes for HTTP errors
|
2011-01-16 02:54:59 +00:00 |
Arvid Norberg
|
b49999b76e
|
made the DHT implementation slightly more robust against routing table poisoning and node ID spoofing
|
2011-01-08 08:54:51 +00:00 |
Arvid Norberg
|
ee7c713af7
|
support chunked encoding in http downloads (http_connection)
|
2011-01-06 04:08:57 +00:00 |
Arvid Norberg
|
1bc50983dc
|
don't connect to privileged ports by default
|
2010-12-31 00:33:23 +00:00 |
Arvid Norberg
|
71e4172bde
|
minor redirect fix for http_connection
|
2010-12-30 22:51:15 +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
|
ae41b2598b
|
fix non-dht build
|
2010-12-29 02:17:44 +00:00 |
Arvid Norberg
|
ea04fbb22c
|
support CDATA in xml parser
|
2010-12-29 01:59:41 +00:00 |
Arvid Norberg
|
fc0bd8066b
|
use a python python dictionary for settings instead of session_settings object (in python bindings)
|
2010-12-26 08:03:02 +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
|
8c3ad6b4f3
|
asio debugging fixes and test_transfer fixes
|
2010-12-24 18:15:01 +00:00 |
Arvid Norberg
|
18228d6615
|
fix warning in utp_stream
|
2010-12-24 01:32:26 +00:00 |
Arvid Norberg
|
451c583023
|
more robust mechanism to determine external IP
|
2010-12-24 01:31:41 +00:00 |
Arvid Norberg
|
8cec51fc47
|
fixes to make valgrind happy
|
2010-12-24 01:22:49 +00:00 |
Arvid Norberg
|
491b876329
|
fixed some msvc warnings
|
2010-12-19 09:50:58 +00:00 |
Arvid Norberg
|
650f02eba7
|
fixed some windows build issues
|
2010-12-19 08:12:31 +00:00 |
Arvid Norberg
|
20d4279177
|
optimized piece picking to not cause busy loops in some end-game modes
|
2010-12-18 10:19:34 +00:00 |
Arvid Norberg
|
f2416af718
|
added feature to turn off making outgoing connections for seeds
|
2010-12-17 03:20:36 +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
|
4fcfceb087
|
DHT optimizations and fixes. Fixed routing table bucket splitting
|
2010-12-12 20:36:42 +00:00 |
Arvid Norberg
|
b56a1638ae
|
DHT fixes. fixed bucket refresh issue. re-introduced refreshing our own bucket regularly. added more DHT instrumentation in session_status. added alert for when bootstrap is complete. Fixed bootstrap to ping remaining nodes when search is complete. Completed recent DHT observer rewrite to remove some redundant fields
|
2010-12-12 03:17:08 +00:00 |
Arvid Norberg
|
67d1c57b5e
|
bumped some limits in dump_torrent
|
2010-12-11 22:00:20 +00:00 |
Arvid Norberg
|
29ed03f720
|
first implementation of DHT security implementation. tie the node ID to the external IP
|
2010-12-11 09:38:07 +00:00 |
Arvid Norberg
|
1e82df3e45
|
support partial hash DHT lookups
|
2010-12-06 06:39:16 +00:00 |
Arvid Norberg
|
779014ddac
|
support requesting UPnP and NAT-PMP routers for our external IP address
|
2010-12-05 20:40:28 +00:00 |
Arvid Norberg
|
1c99bf1de3
|
more network thread asserts to make sure only the network thread touches network-thread only data. Also delay starting the network thread until after the session constructor is done with its setup
|
2010-12-04 22:20:31 +00:00 |
Arvid Norberg
|
94ef3eaf4b
|
windows build fixes
|
2010-12-01 05:47:18 +00:00 |
Arvid Norberg
|
f4746f4090
|
verbose logging cleanup
|
2010-12-01 04:22:03 +00:00 |
Arvid Norberg
|
2e69366b02
|
reverted part of the file_storage API to match the previous one more closly
|
2010-11-29 05:44:29 +00:00 |
Arvid Norberg
|
f82321c1dd
|
add a backwards compatible lazy_bdecode()
|
2010-11-29 02:48:40 +00:00 |
Arvid Norberg
|
e5f980d80d
|
merged uTP branch into trunk (yay)
|
2010-11-29 01:33:05 +00:00 |
Arvid Norberg
|
80611bd12c
|
some settings save-fixes and reverting some unnecessary changes in the utp branch
|
2010-11-28 22:36:26 +00:00 |
Arvid Norberg
|
134dae1c8b
|
add missing header files to makefile install
|
2010-11-28 18:47:20 +00:00 |
Arvid Norberg
|
2e871382d7
|
add debug configuration to debug shutdown-stall bugs / outstanding async operations
|
2010-11-28 01:47:30 +00:00 |
Arvid Norberg
|
af6ac4aca9
|
some solaris build fixes
|
2010-11-28 00:26:33 +00:00 |
Arvid Norberg
|
f21251cba8
|
limit number of torrents tracked by DHT and support DHT name lookups
|
2010-11-27 03:09:28 +00:00 |
Arvid Norberg
|
d1cb2d52ff
|
fixed build issues with with vernose logging enabled
|
2010-11-26 20:44:48 +00:00 |
Arvid Norberg
|
faccbd8ae3
|
introduce safety limit on total number of items in bencoded trees in lazy_bdecode. Document lazy_bdecode and its error codes. Make dump_torrent able to change the decoding limits
|
2010-11-25 02:49:50 +00:00 |
Arvid Norberg
|
894db973e8
|
optimized memory usage of torrent_info and file_storage
|
2010-11-24 23:49:22 +00:00 |
Arvid Norberg
|
d98a8b04a5
|
make storage constructor a boost.function for flexibility. Also added some documentation for trackerid
|
2010-11-18 17:36:11 +00:00 |
Arvid Norberg
|
a05acc4bac
|
support trackerid tracker extension
|
2010-11-18 05:51:52 +00:00 |
Arvid Norberg
|
40ed231366
|
fixed tracker timeout handling
|
2010-11-18 01:06:33 +00:00 |
Arvid Norberg
|
71d51b90e8
|
more size logging and potential fix for udp_tracker_connection leak
|
2010-11-16 06:41:35 +00:00 |
Arvid Norberg
|
62f8cac2b9
|
fixed typo
|
2010-11-15 05:15:43 +00:00 |
Arvid Norberg
|
8c404cc5c1
|
optimized memory usage of torrent_info
|
2010-11-15 05:10:36 +00:00 |
Arvid Norberg
|
79f6b5856b
|
verbose logging fixes
|
2010-11-15 04:43:53 +00:00 |
Arvid Norberg
|
873febb894
|
don't flush every string printed to the log
|
2010-11-06 23:02:24 +00:00 |
Arvid Norberg
|
a2a2ac08a2
|
move queue_position and need_save_resume into torrent_status. optimized client_test to make fewer synchronous calls and pull more out of torrent_status
|
2010-11-06 18:04:07 +00:00 |
Arvid Norberg
|
589c560a45
|
fixed build with boost-1.44
|
2010-11-06 16:16:00 +00:00 |
Arvid Norberg
|
1c7e5506e9
|
report stats on the number of dht request observers that are currently allocated
|
2010-11-06 07:12:57 +00:00 |
Arvid Norberg
|
d3a8916f02
|
further simplify the DHT by getting rid of the result type and just using observers instead. This might save some memory and should fix the assert that would be triggered before
|
2010-11-05 19:06:50 +00:00 |
Arvid Norberg
|
8737a339c8
|
refactored verbose peer logging to use format strings
|
2010-10-31 22:12:26 +00:00 |
Arvid Norberg
|
f57e1dd622
|
chunked encoding fixes and added support for http seeds as well
|
2010-10-31 03:05:11 +00:00 |
Arvid Norberg
|
a76570b563
|
deprecated a bunch of query functions on torrent_handle in favor of using status() to get as much information as possible in fewer calls, and saving time on synchronizing with the main thread
|
2010-10-30 17:23:30 +00:00 |
Arvid Norberg
|
08a234f6a6
|
document peer turnover settings and update default settings to enable it. In trunk, make the peer turnover interval configurable as well
|
2010-10-30 15:59:57 +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
|
2e05dc765a
|
make the listen argument configurable
|
2010-10-29 08:10:12 +00:00 |
Arvid Norberg
|
40245c5774
|
increased the interval between switching peers for round-robin seeding
|
2010-10-29 02:52:42 +00:00 |
Arvid Norberg
|
f84cc340df
|
fixed a bunch of sloppy typos
|
2010-10-29 02:42:41 +00:00 |
Arvid Norberg
|
9b323c372d
|
changed default choker behavior to use 8 unchoke slots (instead of being rate based)
|
2010-10-29 02:28:13 +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
|
fc1b44b560
|
improve error reporting of lazy_bdecode to use error_code
|
2010-10-28 04:01:59 +00:00 |
Arvid Norberg
|
d737dd051d
|
added support for chunked encoding for web seeds
|
2010-10-27 06:39:18 +00:00 |
Arvid Norberg
|
9f37b703ea
|
mark num_connections and num_uploads as deprecated
|
2010-10-25 23:11:58 +00:00 |
Arvid Norberg
|
02abc5919f
|
fixed performance counter macro
|
2010-10-24 08:08:24 +00:00 |
Arvid Norberg
|
07f1b74291
|
fixed logging build
|
2010-10-24 08:06:58 +00:00 |
Arvid Norberg
|
6387910a42
|
use rolling average instead of a history and actual average for stats. Saves memory
|
2010-10-24 01:22:10 +00:00 |
Arvid Norberg
|
84d81d3a82
|
fixed up link test to make sure library and client are using the same configuration, also factored out common code from session constructor
|
2010-10-24 00:44:07 +00:00 |
Arvid Norberg
|
9a461c5e46
|
reduce some warnings
|
2010-10-22 05:39:32 +00:00 |
Arvid Norberg
|
cadd4f1b8d
|
anti-leach seeding unchoke mode
|
2010-10-21 05:53:13 +00:00 |
Arvid Norberg
|
2ccf08e9b5
|
fixed bug in create torrent when adding sha1 file hashes to each file
|
2010-10-18 00:46:15 +00:00 |
Arvid Norberg
|
eba657d8ad
|
reports redundant downloads to tracker, fixed downloaded calculation to be more stable when not including redundant. Improved redundant data accounting to be more accurate
|
2010-10-18 00:10:33 +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
|
7bd25edc9d
|
generalize SSL support to also include web seeds (and in theory regular peers)
|
2010-10-12 08:57:43 +00:00 |
Arvid Norberg
|
43b29c3627
|
support web seeds in create_torrent and fix issue when building without deprecated functions
|
2010-10-10 21:06:35 +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
|
3b550ece98
|
don't save settings that are set to the default value
|
2010-10-10 02:22:57 +00:00 |
Arvid Norberg
|
e494cb219b
|
made seeding choking algorithm configurable
|
2010-10-09 21:11:03 +00:00 |
Arvid Norberg
|
21cbd1fac4
|
deprecated setters for max connections, max half-open, upload and download rates and unchoke slots. These are now set through session_settings
|
2010-10-09 19:09:38 +00:00 |
Arvid Norberg
|
45f535e80c
|
fixed build (with fresh boost)
|
2010-10-09 02:58:56 +00:00 |
Arvid Norberg
|
8212d2f161
|
document the new proxy interface and deprecate it in the 0.15 branch
|
2010-10-07 06:02:35 +00:00 |
Arvid Norberg
|
e72d95384b
|
added missing include
|
2010-10-04 16:12:51 +00:00 |
Arvid Norberg
|
440abdfaf2
|
optimistic unchoke fix
|
2010-10-04 04:06:14 +00:00 |
Arvid Norberg
|
f11b1ce6a0
|
fixed failing invariant check in peer_connection's download queue
|
2010-10-03 22:06:53 +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
|
cd08a61f35
|
expose the full peer list size through session_status
|
2010-10-01 04:07:38 +00:00 |
Arvid Norberg
|
29c5b99bba
|
fixed natpmp retry issue
|
2010-09-30 06:33:42 +00:00 |
Arvid Norberg
|
ecf13f2475
|
fixed typo in config relating to buffer debug builds
|
2010-09-26 00:44:14 +00:00 |
Arvid Norberg
|
554e329f57
|
remove udp_socket mutex
|
2010-09-25 21:39:27 +00:00 |
Arvid Norberg
|
e6d400084e
|
fix to start async operations inside the network thread to maintain thread safety within asio
|
2010-09-25 20:07:27 +00:00 |
Arvid Norberg
|
c341f15f71
|
make the assert macro also be able to print a value
|
2010-09-25 17:46:13 +00:00 |
Arvid Norberg
|
d894dd43d8
|
improved web seed retry behavior
|
2010-09-21 06:34:13 +00:00 |
Arvid Norberg
|
4aa809e558
|
potential 64 bit build issue related to zlib
|
2010-09-07 03:37:33 +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
|
c072c7869f
|
some more missing includes
|
2010-09-01 15:44:33 +00:00 |
Arvid Norberg
|
8e9bb58fb9
|
fixed missing include
|
2010-09-01 15:39:31 +00:00 |
Arvid Norberg
|
a17f4e4e71
|
fixed bug where event=completed would not be sent if it violated the min-interval
|
2010-09-01 03:14:12 +00:00 |
Arvid Norberg
|
11f3dd2c4c
|
DEBUG_BUFFERS doesn't work unless pool allocators are turned off
|
2010-09-01 02:58:51 +00:00 |
Arvid Norberg
|
cf6772d9fd
|
potential build fix for windows (in 0.14 branch)
|
2010-08-28 22:05:20 +00:00 |
Arvid Norberg
|
18a3d545b0
|
fixed potential hang issue when receiving faster than we can handle the incoming messages
|
2010-08-28 19:44:50 +00:00 |
Arvid Norberg
|
e2ca3e1545
|
rate limiter fix
|
2010-08-27 14:52:42 +00:00 |
Arvid Norberg
|
02668e8f75
|
fix message posting to work from multiple threads
|
2010-08-26 17:00:24 +00:00 |
Arvid Norberg
|
fb8ebc53dd
|
save resume data every 15 minutes no matter what
|
2010-08-25 06:38:04 +00:00 |
Arvid Norberg
|
58574c236a
|
fixed build error when using boost 1.44
|
2010-08-25 06:03:40 +00:00 |
Arvid Norberg
|
b7b542f587
|
optimized file_pool lookups and string handling
|
2010-08-23 08:48:02 +00:00 |
Arvid Norberg
|
b747cdab8a
|
merged all proxy settings into a single one
|
2010-08-23 06:27:18 +00:00 |
Arvid Norberg
|
80fbe4d5ef
|
fixed build issues
|
2010-08-22 17:47:07 +00:00 |
Arvid Norberg
|
de3db7e84e
|
don't lock disk cache in RAM by default
|
2010-08-22 17:39:48 +00:00 |
Arvid Norberg
|
f70fbb45c0
|
optimized struct layout of torrent_info. removed boost.date_type types from public interface (replaced by time_t)
|
2010-08-21 22:10:16 +00:00 |
Arvid Norberg
|
afd5567969
|
session::set_tracker_proxy fix for udp trackers
|
2010-08-21 22:07:29 +00:00 |
Arvid Norberg
|
a85f1f5c61
|
improved logging
|
2010-08-18 17:14:40 +00:00 |
Arvid Norberg
|
cbc7bd078d
|
fix no-exception build
|
2010-08-08 04:06:06 +00:00 |
Arvid Norberg
|
fd5f1bf80b
|
improved SOCKS5 support
|
2010-08-03 09:08:37 +00:00 |
Arvid Norberg
|
9d56f3f459
|
restored default fail_limit to unlimited on all trackers
|
2010-08-03 03:00:54 +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
|
ef48c92a4e
|
fixed SOCKS5 bug for routing UDP packets
|
2010-07-25 01:31:15 +00:00 |
Arvid Norberg
|
030b2b5be8
|
don't dereference empty strings
|
2010-07-24 06:46:58 +00:00 |
Arvid Norberg
|
9109af0ce1
|
fix for disk job queue size measurement
|
2010-07-23 16:15:14 +00:00 |
Arvid Norberg
|
72060e8676
|
removed DHT mutex since everything is in the network thread now
|
2010-07-19 05:27:33 +00:00 |
Arvid Norberg
|
9baa280b52
|
added asserts to catch broken peer allocations and frees as well as disk buffer corruption
|
2010-07-18 19:28:22 +00:00 |
Arvid Norberg
|
a3f5962f91
|
ignore failures in when asking for local_endpoint
|
2010-07-18 14:45:43 +00:00 |
Arvid Norberg
|
1e70456f58
|
improved support for multi-homed clients
|
2010-07-17 07:13:14 +00:00 |
Arvid Norberg
|
9a9c121ec0
|
fixed assert typo
|
2010-07-15 06:31:39 +00:00 |
Arvid Norberg
|
4c6be42b74
|
added feature to not count downloaded bytes from web seeds in stats
|
2010-07-15 06:27:44 +00:00 |
Arvid Norberg
|
b3f57ac293
|
added incoming lsd alert
|
2010-07-15 05:56:29 +00:00 |
Arvid Norberg
|
aa25ed00c6
|
fix force-reannounce and tracker retry issue
|
2010-07-15 05:16:06 +00:00 |
Arvid Norberg
|
97afe3fca8
|
added option to set file priorities when adding torrents
|
2010-07-15 01:14:36 +00:00 |
Arvid Norberg
|
a3d95677b0
|
fixed build errors from last check-in
|
2010-07-14 07:38:35 +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
|
92593abf89
|
added support for SOCKS5 proxies in client_test and fixed an assert when using proxies
|
2010-07-03 06:56:09 +00:00 |