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
|
bbf9c83edc
|
initial support for icmp errors in the DHT
|
2008-05-08 00:22:17 +00:00 |
Arvid Norberg
|
73ef60e5fa
|
seed rank fix
|
2008-05-07 08:24:16 +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
|
4d59d9eabc
|
fix build with DHT disabled
|
2008-04-24 16:57:22 +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
|
9a434a919f
|
some more ASNum additions
|
2008-04-22 00:05:23 +00:00 |
Arvid Norberg
|
779b006ac0
|
fixed missing torrent_checked_alert
|
2008-04-16 07:02:39 +00:00 |
Arvid Norberg
|
43d5781638
|
port mapping fix
|
2008-04-13 19:19:22 +00:00 |
Arvid Norberg
|
42f55adcce
|
support for country lookup through GeoIP
|
2008-04-11 08:46:43 +00:00 |
Arvid Norberg
|
093d912e9a
|
receive buffer optimization. added receive_buffer_size and used_receive_buffer to peer_info. changed plugin api to make use of new disk_buffer_holder type
|
2008-04-10 10:03:23 +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
|
75ef4ec1f1
|
added option to not use pool allocators (useful when using memory debugging tools)
|
2008-04-09 05:19:11 +00:00 |
Arvid Norberg
|
9fe5bb7a7d
|
removed dependencies on exceptions from session_impl
|
2008-04-07 01:22:26 +00:00 |
Arvid Norberg
|
d10205057e
|
port mapping update
|
2008-04-06 23:18:35 +00:00 |
Arvid Norberg
|
2e6b9c2dce
|
revamped part of the port mapping code (UPnP and NAT-PMP). Added documentation for start_{lsd,natpmp,upnp} and stop_{lsd,natpmp,upnp}
|
2008-04-06 19:17:58 +00:00 |
Arvid Norberg
|
57d75e120a
|
initial support for GeoIP (only AS mappings for now)
|
2008-04-05 04:53:22 +00:00 |
Arvid Norberg
|
77f9278a36
|
leopart listen failure workaround
|
2008-04-03 04:35:56 +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
|
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
|
b6be33b5b6
|
storage fix
|
2008-03-25 04:38:59 +00:00 |
Arvid Norberg
|
32c2c38737
|
fixed incorrect error message in async_accept
|
2008-03-16 12:33:39 +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
|
a97be6937a
|
unchoker counts bytes instead of rates
|
2008-03-10 03:30:01 +00:00 |
Arvid Norberg
|
f53cfa7eeb
|
removed checker thread
|
2008-03-08 06:06:31 +00:00 |
Arvid Norberg
|
9d3b60edb7
|
added support to bind outgoing connections to specific ports (might be useful to do traffic shaping)
|
2008-02-28 07:34:07 +00:00 |
Arvid Norberg
|
83f405ac54
|
followups to windows fixes
|
2008-02-25 11:27:23 +00:00 |
Arvid Norberg
|
a25c25b02a
|
fixed windows build and removed msvc warnings
|
2008-02-25 10:28:53 +00:00 |
Arvid Norberg
|
c1c2fb4409
|
resume data unit test and fix
|
2008-02-25 05:07:29 +00:00 |
Arvid Norberg
|
df74cbb78a
|
fixed logging=errors configuration
|
2008-02-17 22:51:03 +00:00 |
Arvid Norberg
|
7e83c3fc51
|
changed storage interface to not require exceptions
|
2008-02-14 03:48:20 +00:00 |
Arvid Norberg
|
948b2bafe6
|
made it work properly when building with stats logging
|
2008-02-12 08:34:57 +00:00 |
Arvid Norberg
|
c5fd5ecfb4
|
removed 'adler32' key from fastresume, since it was implemented with blocking I/O
|
2008-02-11 07:18:28 +00:00 |
Arvid Norberg
|
c9b53ddf8c
|
allow negative and zero values for session_settings::connection_speed
|
2008-02-11 03:55:53 +00:00 |
Arvid Norberg
|
6c552db68e
|
added disk cache expiration
|
2008-02-10 00:58:25 +00:00 |
Arvid Norberg
|
a16d592ff4
|
handles lack of 'adler32' key in fast resume data
|
2008-02-09 19:51:23 +00:00 |
Arvid Norberg
|
8cf0510144
|
added disk cache for write operations
|
2008-02-08 10:22:05 +00:00 |
Arvid Norberg
|
1c82ef36d8
|
improved support for out-of-memory conditions
|
2008-02-05 05:51:05 +00:00 |
Arvid Norberg
|
61bbc6e58f
|
initial https support for trackers and http_connection. Added support for proxies to http_connection
|
2008-01-27 22:39:50 +00:00 |
Arvid Norberg
|
8b455be1d9
|
better exception handling and more invariant checks
|
2008-01-19 19:00:54 +00:00 |
Arvid Norberg
|
5ff6708b3d
|
made it build without dht support
|
2008-01-18 02:02:18 +00:00 |
Arvid Norberg
|
afa6fd97a3
|
max connections limit fix
|
2008-01-18 01:29:28 +00:00 |
Arvid Norberg
|
4f99230c74
|
auto unchoke improvement
|
2008-01-17 21:34:00 +00:00 |
Arvid Norberg
|
127d3e6ad5
|
bandwidth limiter fixes. proper priority that cannot starve connections
|
2008-01-17 17:40:46 +00:00 |
Arvid Norberg
|
832c0c8b63
|
improved auto-unchoke mechanism
|
2008-01-15 08:37:48 +00:00 |
Arvid Norberg
|
5d196ed555
|
auto upload slots. opens up more slots if upload rate is not met. On by default
|
2008-01-13 11:18:18 +00:00 |
Arvid Norberg
|
7cea96ea88
|
added TORRENT_VERBOSE_BANDWIDTH_LIMIT build option to generate a bandwidth manager log
|
2008-01-12 18:47:26 +00:00 |
Arvid Norberg
|
72edfc2ee7
|
improved network interface enumeration and upnp device filtering
|
2008-01-11 06:49:37 +00:00 |
Arvid Norberg
|
b5dedccb70
|
made trunk build on windows (mapped storage doesn't work right yet though)
|
2008-01-11 06:35:34 +00:00 |
Arvid Norberg
|
695cd6407b
|
remove use of strand
|
2008-01-08 05:47:43 +00:00 |
Arvid Norberg
|
e05f396a5d
|
made UPnP ignore devices that don't respond from a router IP (optional but on by default)
|
2008-01-07 05:48:28 +00:00 |
Arvid Norberg
|
cf4036310b
|
changed the way connections are disconnected. improved logging. Does not depend on exceptions anymore
|
2008-01-07 01:10:46 +00:00 |
Arvid Norberg
|
cfe5c8962e
|
more asserts around send buffers and fixes potential race condition
|
2007-12-27 21:43:11 +00:00 |
Arvid Norberg
|
d5748419c1
|
fixed upnp bug when connecting without network
|
2007-12-24 08:18:53 +00:00 |
Arvid Norberg
|
e0d1951fac
|
fixes #234. properly shuts down the disk io thread
|
2007-12-24 08:15:10 +00:00 |
Arvid Norberg
|
d1311e2bb8
|
improved session logging
|
2007-12-19 21:36:54 +00:00 |
Arvid Norberg
|
8c3f9571de
|
socks5 support for udp messages
|
2007-12-09 04:15:24 +00:00 |
Arvid Norberg
|
cfc4638df5
|
fixed bug when trackers are removed from torrent
|
2007-12-07 21:53:33 +00:00 |
Arvid Norberg
|
77cea2eafc
|
added more asserts in session_impl::check_invariant
|
2007-11-27 02:46:19 +00:00 |
Arvid Norberg
|
c18ae83146
|
added wait_for_alert() to session. If there is at least one alert in the queue, it returns the front one in the queue, if the queue is empty, it waits until a new alert is posted and returns that one, or returns 0 if the time expires first.
|
2007-11-25 08:18:57 +00:00 |
Arvid Norberg
|
c929f4fb69
|
fix for systems where IPv6 sockets bound to INADDR_ANY also listens on IPv4 connections
|
2007-11-23 22:14:33 +00:00 |
Arvid Norberg
|
88e69d0edc
|
fix for when lsd, upnp or nat-pmp is started more than once
|
2007-11-23 21:11:31 +00:00 |
Arvid Norberg
|
55fac2518d
|
local peers no longer counts as incoming_connections
|
2007-11-19 18:05:47 +00:00 |
Arvid Norberg
|
3489ccaebd
|
explicit lsd close fix
|
2007-11-19 02:24:07 +00:00 |
Arvid Norberg
|
7be29d9b84
|
applied 'logpath' patch from #202
|
2007-11-16 21:21:28 +00:00 |
Arvid Norberg
|
41ef204f26
|
closes bandwidth rate limiters
|
2007-11-08 07:52:41 +00:00 |
Arvid Norberg
|
8868469f2f
|
warning fix
|
2007-11-07 01:38:17 +00:00 |
Arvid Norberg
|
fd51412b70
|
shutdown improvements. Fixes stall
|
2007-11-02 00:27:53 +00:00 |
Arvid Norberg
|
43d3fc9a28
|
fixed warning
|
2007-10-31 12:04:05 +00:00 |
Arvid Norberg
|
1a280e31fa
|
cleanup. changed the connection map into a set of peer_connections. moved the policy object into the torrent (as opposed to being a pointer). Fixes issues with multiple peers on the same IP. Reduces some lookups.
|
2007-10-31 09:48:20 +00:00 |
Arvid Norberg
|
70810cb7e9
|
dht_state() no longer asserts on the dht being active. It just returns an empty state if it isn't
|
2007-10-29 16:18:37 +00:00 |
Arvid Norberg
|
79d4191ef5
|
attempt to fix stall on exit where some connections weren't closed
|
2007-10-29 00:29:43 +00:00 |
Arvid Norberg
|
3c05e0fa41
|
attempt to fix #190
|
2007-10-27 21:21:44 +00:00 |
Arvid Norberg
|
8f07edbed2
|
asio handlers are now properly cancelled when destructing the session object, race conditions are avoided by waiting for the io service to complete all tasks
|
2007-10-26 07:14:19 +00:00 |
Arvid Norberg
|
92d29334fa
|
cleanup. doesn't allocate sockets on the heap for no reason anymore
|
2007-10-22 04:17:26 +00:00 |
Arvid Norberg
|
d0ef85e802
|
fixed issue with failing async_accept on windows
|
2007-10-15 19:02:54 +00:00 |
Arvid Norberg
|
282edb5861
|
windows vista detection to set the default half-open connection limit even lower
|
2007-10-15 01:15:58 +00:00 |
Arvid Norberg
|
59c7f5bfbb
|
added option to delete files from disk as a torrent is removed
|
2007-10-13 03:33:33 +00:00 |
Arvid Norberg
|
f8d026efbc
|
fixed typo
|
2007-10-10 19:02:42 +00:00 |
Arvid Norberg
|
ffe2e75882
|
added another alert to cover all cases where the torrent has to be checked at start, and tell the user why. Fixed a problem with the resume data generation introduced in last storage check-in
|
2007-10-09 00:25:01 +00:00 |
Arvid Norberg
|
4d19f7ff0f
|
storage optimization. introduced a nother allocation mode: sparse. Now there is allocate, compact and sparse. Unless compact is used, the memory structures used to keep track of pieces are no longer allocated. sparse storage mode is now the default
|
2007-10-08 20:01:36 +00:00 |
Arvid Norberg
|
b705933901
|
fixed dead lock and fixed a problem in recent shutdown cleanup
|
2007-10-07 23:20:38 +00:00 |
Arvid Norberg
|
28274bf1bd
|
improved shutdown behavior. decreased tracker timeouts to 5 seconds. added more logging
|
2007-10-07 18:06:56 +00:00 |
Arvid Norberg
|
966800cd5b
|
replaced the assert macro to TORRENT_ASSERT instead of hi-jacking assert.
|
2007-10-05 00:30:00 +00:00 |
Arvid Norberg
|
b75a1325cb
|
fix to recent 'store banned peers' check-in
|
2007-10-04 17:29:11 +00:00 |
Arvid Norberg
|
d29fbdc453
|
added tests for fast extension features + fixes
|
2007-10-04 09:32:09 +00:00 |
Arvid Norberg
|
4cab49cbdf
|
saves banned peers in resume data
|
2007-10-03 17:37:15 +00:00 |
Arvid Norberg
|
2c71fa35d3
|
fixed potential race condition when removing a torrent that was just added
|
2007-10-03 01:21:28 +00:00 |
Arvid Norberg
|
0048f343cd
|
upnp, natpmp and lsd now have proper lifetime management by using intrusive_ptr
|
2007-09-29 21:31:51 +00:00 |
Arvid Norberg
|
b48948e231
|
changed the double send buffers to a chained buffer using iovec send operations. buffers are recycled (saves memory and cpu) and memory copies are avoided (saves cpu). More statistics is added to track buffer usage
|
2007-09-29 16:14:03 +00:00 |
Arvid Norberg
|
6ce8d367a4
|
added error checking to endpoint to string conversion. fixes problem on systems without IPv6 support
|
2007-09-23 22:50:25 +00:00 |
Arvid Norberg
|
b9d5854a99
|
IPv6 fix
|
2007-09-22 17:07:55 +00:00 |
Arvid Norberg
|
2e93b92cb4
|
more IPv6 fixes. support for multihomed machines by listening on multiple interfaces. added listen_succeeded_alert to advertize which interfaces are being listened on
|
2007-09-22 16:27:29 +00:00 |
Arvid Norberg
|
7bbfb3bd4b
|
added a userdata parameter to add_torrent that is passed in to plugins
|
2007-09-14 00:11:33 +00:00 |
Arvid Norberg
|
9246de00bd
|
listen socket refactoring
|
2007-09-10 19:10:38 +00:00 |
Arvid Norberg
|
8b59f0e466
|
fix for reuseaddr
|
2007-09-10 16:47:43 +00:00 |
Arvid Norberg
|
4b63d8aaaf
|
set reusaddr on the listen socket
|
2007-09-10 09:54:26 +00:00 |
Arvid Norberg
|
025a982b00
|
explicitly closes the listen socket
|
2007-09-10 09:23:04 +00:00 |
Arvid Norberg
|
ee5ce50502
|
made max half open connections default to 8 on windows and added query function for that limit on session.
|
2007-09-10 01:57:40 +00:00 |
Arvid Norberg
|
0d02fe0539
|
upnp and lsd update. added a broadcast_socket and made the upnp connection use the locally bound ip to specify its address in the soap requests
|
2007-09-09 23:52:34 +00:00 |
Arvid Norberg
|
4269451bbe
|
session_impl fix
|
2007-09-08 18:18:09 +00:00 |
Arvid Norberg
|
4e8d49d028
|
applied patch from #145
|
2007-09-03 22:27:52 +00:00 |
Arvid Norberg
|
c8088459a0
|
made torrent_info reference counted and held by a boost::intrusive_ptr
|
2007-09-01 03:00:31 +00:00 |
Arvid Norberg
|
e248ba0cdc
|
added asserts to make sure the global connection limit is not exceeded
|
2007-08-27 16:45:45 +00:00 |
Arvid Norberg
|
a5e985ec7c
|
fixed choke bug
|
2007-08-22 18:50:53 +00:00 |
Arvid Norberg
|
744d96796b
|
made it possible to start torrents in paused state. updated documentation
|
2007-08-22 05:31:42 +00:00 |
Arvid Norberg
|
1399b623bc
|
choke count fixes
|
2007-08-21 21:51:29 +00:00 |
Arvid Norberg
|
e074b0a977
|
removed too expensive invariant checks
|
2007-08-21 19:18:06 +00:00 |
Arvid Norberg
|
4da3366a27
|
added invariant checks to session_impl
|
2007-08-21 18:33:28 +00:00 |
Arvid Norberg
|
23a20a24c1
|
added more asserts for choke/unchoke states and a peer_info flag to indicate a peer being optimistically unchoked
|
2007-08-21 17:45:28 +00:00 |
Arvid Norberg
|
b8e48c061e
|
attempt to fix build errors on windows. #134
|
2007-08-21 04:46:17 +00:00 |
Arvid Norberg
|
e80653152b
|
choked fix
|
2007-08-19 08:32:39 +00:00 |
Arvid Norberg
|
da525292fe
|
some more asserts
|
2007-08-19 08:23:44 +00:00 |
Arvid Norberg
|
3d3df51d45
|
fixed per torrent unchoke limit
|
2007-08-17 07:37:08 +00:00 |
Arvid Norberg
|
834873a15e
|
fixed unlimited settings check
|
2007-08-17 03:43:26 +00:00 |
Arvid Norberg
|
b05500570c
|
added parenthesis around std::min and std::max for msvc compatibility
|
2007-08-16 22:14:17 +00:00 |
Arvid Norberg
|
f8979ff932
|
applied patch from #97
|
2007-08-16 19:41:28 +00:00 |
Arvid Norberg
|
4ac1ac8a1f
|
removed allocate_resources. switched to a global unchoker and connection distribution
|
2007-08-16 12:41:46 +00:00 |
Arvid Norberg
|
5dfba92665
|
fixed #101
|
2007-08-07 07:35:21 +00:00 |
Arvid Norberg
|
f67deba30e
|
fixed #81
|
2007-07-26 07:04:35 +00:00 |
Arvid Norberg
|
3050e35adf
|
disabled lsd for private torrents
|
2007-07-23 00:38:31 +00:00 |
Arvid Norberg
|
4d912eddf4
|
added openssl cleanup (to make leak detectors not complain)
|
2007-07-06 23:06:58 +00:00 |
Arvid Norberg
|
e714e1aeba
|
improved bandwidth limiter and added a unit test for it
|
2007-07-02 23:48:06 +00:00 |
Arvid Norberg
|
5efe12dde6
|
fixed bug reported by Marcos Pinto where an exception was not cought properly
|
2007-06-13 18:28:55 +00:00 |
Arvid Norberg
|
3b8670626a
|
merged back async_io branch into trunk
|
2007-06-10 20:46:09 +00:00 |
Arvid Norberg
|
a7ad108e8a
|
made the unchoke interval configurable
|
2007-06-07 22:37:58 +00:00 |
Arvid Norberg
|
273f8bd921
|
merged back encryption branch to trunk
|
2007-06-06 00:41:20 +00:00 |
Arvid Norberg
|
d0412a2244
|
added port filter for outgoing connections
|
2007-06-01 01:05:57 +00:00 |
Arvid Norberg
|
31247c046a
|
supports turning on and off upnp, natpmp and lsd. All ofthem are now off by default
|
2007-05-31 00:21:54 +00:00 |
Arvid Norberg
|
c10e74f4fc
|
improved control over the rate of connection attempts
|
2007-05-25 21:00:35 +00:00 |
Arvid Norberg
|
4ff4ddeae7
|
added more shutdown logging
|
2007-05-24 19:51:14 +00:00 |
Arvid Norberg
|
510966f2a5
|
fixed fast resume data bug when using full allocation mode, and moved parts of resume data generation to the storage
|
2007-05-24 18:53:55 +00:00 |
Arvid Norberg
|
58b23a79e7
|
exception fixes
|
2007-05-24 17:07:43 +00:00 |
Arvid Norberg
|
883773e8fa
|
added shutdown logging and tracker manager shutdown flag
|
2007-05-23 01:02:46 +00:00 |
Arvid Norberg
|
1d68e10684
|
made it build in msvc by inserting ; at the end of function try blocks
|
2007-05-16 01:17:14 +00:00 |
Arvid Norberg
|
0436ab2ec8
|
added filename extension to statistics log
|
2007-05-14 04:49:08 +00:00 |
Arvid Norberg
|
419ac258de
|
more statistics
|
2007-05-14 04:01:30 +00:00 |
Arvid Norberg
|
dcad9b3031
|
fixed warning
|
2007-05-14 03:50:19 +00:00 |
Arvid Norberg
|
4a906aa31d
|
added option for session statistics output
|
2007-05-13 22:01:21 +00:00 |
Arvid Norberg
|
9f902e7b9f
|
the DHT now refreshes buckets properly.
|
2007-05-12 01:52:25 +00:00 |
Arvid Norberg
|
9ffde51404
|
fixed a bug caused by file_pool being destructed before torrents, and torrents using the file pool in their destructors
|
2007-05-11 23:41:31 +00:00 |
Arvid Norberg
|
4371dbe02c
|
fixed resume data problem caused by recent piece_picker optimization
|
2007-05-09 03:18:53 +00:00 |
Arvid Norberg
|
4956639171
|
piece picker optimization
|
2007-05-08 11:13:13 +00:00 |
Arvid Norberg
|
49bd69cad4
|
introduced a proper half open TCP connection limit. Also exposed the connection queue to let clients use the same connection limiter as libtorrent. UPnP connections and tracker connection are now also limited as well as peer connections and web seeds
|
2007-05-05 00:29:33 +00:00 |