Arvid Norberg
|
cefc97597d
|
improve error reporting for save resume data for torrents with no metadata
|
2011-03-04 06:17:55 +00:00 |
Arvid Norberg
|
0aff6803fb
|
fix to IP filter exemptions
|
2011-03-02 17:37:10 +00:00 |
Arvid Norberg
|
08c93978a6
|
clean up some dead code and fix windows build
|
2011-02-28 00:35:58 +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
|
8c2d496992
|
added new option 'always_send_user_agent'
|
2011-02-26 18:17:55 +00:00 |
Arvid Norberg
|
3b68fb2a03
|
add missing files
|
2011-02-26 17:59:34 +00:00 |
Arvid Norberg
|
ab3b82b8ee
|
replaced std::rand() with custom random generator
|
2011-02-26 07:55:51 +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
|
56937edf56
|
cleaned up some exception handling and introduced macros like BOOST_TRY/BOOST_CATCH to make the optional exception handling nicer
|
2011-02-25 17:00:36 +00:00 |
Arvid Norberg
|
5f5ba94462
|
cleared some variables in constructors and got rid of an unnecessary constructor
|
2011-02-25 04:28:32 +00:00 |
Arvid Norberg
|
20d763c8c7
|
added option to not use custom assert macro
|
2011-02-24 18:15:15 +00:00 |
Arvid Norberg
|
118a75ebe7
|
generalized string conversion for libc
|
2011-02-22 03:09:13 +00:00 |
Arvid Norberg
|
97a40a45cd
|
fully support unbuffered I/O
|
2011-02-22 02:53:26 +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
|
bd1ef5397c
|
clean up broadcasting
|
2011-02-17 06:47:26 +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
|
3c05e81529
|
support for receiving multi announce messages for local peer discovery
|
2011-02-16 07:41:44 +00:00 |
Arvid Norberg
|
cb6f38f056
|
added session::listen_no_system_port flag to prevent libtorrent from ever binding the listen socket to port 0
|
2011-02-16 06:35:53 +00:00 |
Arvid Norberg
|
9aa09d384c
|
added smooth_connect and turned it on by default
|
2011-02-16 03:11:55 +00:00 |
Arvid Norberg
|
d35670e53d
|
generalize use of getifaddrs
|
2011-02-15 07:42:46 +00:00 |
Arvid Norberg
|
247ad31dc0
|
more disconnect granularity in stats logging
|
2011-02-14 05:38:59 +00:00 |
Arvid Norberg
|
b471e40064
|
log more details on the cause of disconnects
|
2011-02-14 04:48:02 +00:00 |
Arvid Norberg
|
7508038337
|
cross compiling fixes
|
2011-02-14 04:12:26 +00:00 |
Arvid Norberg
|
8bb71da401
|
disk write queue watermark fix
|
2011-02-13 22:27:02 +00:00 |
Arvid Norberg
|
4267f0ec5a
|
rotate stats log every hour
|
2011-02-11 17:39:22 +00:00 |
Arvid Norberg
|
e959acae42
|
add iconv build option
|
2011-02-09 09:54:45 +00:00 |
Arvid Norberg
|
813d88a50e
|
fix non-IPv6 build
|
2011-02-09 07:27:04 +00:00 |
Arvid Norberg
|
a42d42fd11
|
CPU optimization for end-game piece picker
|
2011-02-09 02:56:00 +00:00 |
Arvid Norberg
|
c8edb67509
|
fix build
|
2011-02-08 06:46:53 +00:00 |
Arvid Norberg
|
e079907252
|
more end-game piece picker optimization (early exit)
|
2011-02-08 04:08:04 +00:00 |
Arvid Norberg
|
73e3bbae7b
|
use iconv on mingw
|
2011-02-07 17:25:24 +00:00 |
Arvid Norberg
|
42902c405c
|
fix build
|
2011-02-07 16:50:57 +00:00 |
Arvid Norberg
|
5df4e7edd9
|
added more piece picker stats
|
2011-02-07 00:51:20 +00:00 |
Arvid Norberg
|
3d616f894e
|
end-game mode optimizations
|
2011-02-06 23:40:21 +00:00 |
Arvid Norberg
|
ea0af55a46
|
log end-game mode stats with stats logging
|
2011-02-06 03:07:00 +00:00 |
Arvid Norberg
|
ed8779a338
|
added option to not recheck on missing or incomplete resume data
|
2011-02-06 00:50:12 +00:00 |
Arvid Norberg
|
5690444178
|
fixed bug in udp_socket where there would be two outstanding async read operations on the socket
|
2011-02-05 21:19:33 +00:00 |
Arvid Norberg
|
88663bfbde
|
log more peer errors in stats log
|
2011-02-04 04:31:20 +00:00 |
Arvid Norberg
|
4ed6b1a067
|
introduce a low watermark for disk io blocking connections
|
2011-02-04 03:02:23 +00:00 |
Arvid Norberg
|
bf77ee4199
|
extended stats logging
|
2011-02-03 06:22:22 +00:00 |
Arvid Norberg
|
5456f2ac91
|
provide more stats with stats builds
|
2011-02-03 04:09:50 +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
|
6692f05655
|
added alerts for added and removed torrents
|
2011-02-01 03:25:40 +00:00 |
Arvid Norberg
|
3e4634097d
|
mapped file resume data fixes
|
2011-01-31 00:47:09 +00:00 |
Arvid Norberg
|
ad87e84e47
|
packet buffer comment fix and support for inserting NULLs
|
2011-01-30 19:35:20 +00:00 |
Arvid Norberg
|
d393bb4097
|
report number of peers blocked on disk in session_status
|
2011-01-30 10:04:15 +00:00 |
Arvid Norberg
|
0c16163e71
|
fix build with no extensions support
|
2011-01-29 12:13:49 +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
|
4070c2d465
|
fixed stat_file issue on windows
|
2011-01-25 08:21:01 +00:00 |
Arvid Norberg
|
b230c385d9
|
clean up logic around waiting for disk write queue to fall below low watermark. optimize peer disconnect. Fix integer overflow bug in uTP/TCP mixed mode algorithm. Fixed some invariant checks for closing connections issues
|
2011-01-25 08:03:35 +00:00 |
Arvid Norberg
|
41806e2e07
|
make alert_cast<> support 0
|
2011-01-24 18:20:41 +00:00 |
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 |