Arvid Norberg
|
a655047cb0
|
support SSL over uTP (unit test is still failing with same errors as previously, this has not been fixed yet)
|
2014-10-06 03:03:01 +00:00 |
Arvid Norberg
|
30d7b9e3c3
|
fixed bug with inactivity timer
|
2014-10-05 22:30:09 +00:00 |
Arvid Norberg
|
418e33facc
|
use the session-wide hostname resolver in torrent.cpp
|
2014-10-05 01:23:22 +00:00 |
Arvid Norberg
|
ceccc2a483
|
land branch to remove half-open connection limit / connection queue
|
2014-10-03 20:56:57 +00:00 |
Arvid Norberg
|
8664ff97aa
|
optimize tracker_manager interface to avoid rendering and parsing strings for each peer-ip
|
2014-09-28 06:36:03 +00:00 |
Arvid Norberg
|
60119bf0ca
|
added auto-sequential feature
|
2014-09-24 00:02:00 +00:00 |
Arvid Norberg
|
d7d498c3a3
|
more steps towards isolating peer_connections from the session object. unchoking now happens via the torrent object. hopefully in the future, the session can determine which peers to unchoke without having direct access to them (i.e. with a mutex)
|
2014-09-22 03:47:43 +00:00 |
Arvid Norberg
|
27b7705cf2
|
remove built-in GeoIP support
|
2014-09-21 21:01:48 +00:00 |
Arvid Norberg
|
1ce69d122b
|
add missing files
|
2014-08-27 03:33:41 +00:00 |
Arvid Norberg
|
f32f5e96aa
|
deprecate parts of cache_status and move those counters to session_stats counters. make the performance counters thread safe. fix some issues recently introduced to performance counters and the usage of them in client_test
|
2014-08-01 06:07:48 +00:00 |
Arvid Norberg
|
02f3e48eaa
|
make performance counters able to blend in values, reducing a peer_connection -> session dependency on a sliding average state (this can be used for disk stats too)
|
2014-07-29 16:35:03 +00:00 |
Arvid Norberg
|
7c9c25e359
|
cleaned up redundant bytes and failed bytes counters. moved some into the stats_counters
|
2014-07-29 05:59:00 +00:00 |
Arvid Norberg
|
ab8c1eb334
|
log latency of bittorrent requests
|
2014-07-28 22:18:06 +00:00 |
Arvid Norberg
|
79a2744fa8
|
fixed issue with queued resume data saving, and fixed regression in recent disk error check changes
|
2014-07-21 03:03:59 +00:00 |
Arvid Norberg
|
30713a4a79
|
remove buffer stats debugging feature
|
2014-07-19 08:20:20 +00:00 |
Arvid Norberg
|
fa613131c2
|
removed unused session_impl member, m_next_disk_peer
|
2014-07-13 06:34:59 +00:00 |
Arvid Norberg
|
01640e1682
|
separate stats counters from session_interface (this was the main use of m_ses in peer connections)
|
2014-07-13 04:56:53 +00:00 |
Arvid Norberg
|
7351389ce8
|
land libtorrent_aio branch in trunk
|
2014-07-06 19:18:00 +00:00 |
Arvid Norberg
|
8a132cb9ca
|
fix int64_t -> boost::int64_t and run distcheck on build_dist.sh script
|
2014-05-11 08:20:42 +00:00 |
Arvid Norberg
|
e225259481
|
fix some msvc warnings
|
2014-05-10 03:23:05 +00:00 |
Arvid Norberg
|
86c704a6ff
|
fix dht_bootstrap_alert being posted. add additional alert for dht put completion. add utility to test immutable put/get. fix issue in DHT preventing stores on router nodes (even when they return write tokens). immutable put and get confirmed to be working
|
2014-02-28 04:02:48 +00:00 |
Arvid Norberg
|
1188ec2dcd
|
expose new DHT put/get functionality in the public session API
|
2014-02-24 00:31:13 +00:00 |
Arvid Norberg
|
63c6e495bd
|
don't use shared_from_this for session_impl
|
2014-02-21 04:30:59 +00:00 |
Arvid Norberg
|
e0644ce8f5
|
invariant check macro fixes
|
2014-01-21 19:26:09 +00:00 |
Arvid Norberg
|
702b68ecc4
|
clean up assert related defines and debuf-only fields less error-prone. fix missing initialization in file_pool caused by mistake in defines under which the debug field was initialized
|
2014-01-19 19:45:50 +00:00 |
Arvid Norberg
|
53a62344ca
|
fix port mapping functions in session
|
2013-12-31 22:24:56 +00:00 |
Arvid Norberg
|
4f189e921d
|
mark some expensive parts of invariant checks as expensive and disabled by default. introduce undead_peers to destruct all peer_connections in the network thread. they hang around while waiting for all outstanding disk jobs to complete. make the asio-debugging output a bit prettier
|
2013-12-05 07:42:32 +00:00 |
Arvid Norberg
|
629baa3622
|
reorder some structs to reduce padding
|
2013-11-26 02:00:02 +00:00 |
Arvid Norberg
|
cbe3a72a6e
|
merged i2p fix from RC_0_16
|
2013-10-27 19:56:37 +00:00 |
Arvid Norberg
|
4ac3d286a5
|
back port check to not destruct session_impl from its own thread
|
2013-09-29 19:37:57 +00:00 |
Arvid Norberg
|
89c3db477d
|
merge build fix with C++11 from RC_0_16
|
2013-09-25 19:44:29 +00:00 |
Arvid Norberg
|
0f57615ea3
|
attempt at fixing shut-down hang
|
2013-08-21 15:55:24 +00:00 |
Arvid Norberg
|
e7db8d37a2
|
merge deprecation of wstring overloads from RC_0_16
|
2013-08-02 05:03:22 +00:00 |
Arvid Norberg
|
a401aa0337
|
cleaned up public interface by removing some symbols from the exported set
|
2013-07-19 19:06:27 +00:00 |
Arvid Norberg
|
520b8bfcd1
|
move out alert_manager to its own compilation unit. remove TORRENT_DISABLE_EXTENSIONS from affecting the public API
|
2013-04-09 02:38:11 +00:00 |
Arvid Norberg
|
d21243dc9f
|
make release asserts build
|
2013-03-27 23:46:13 +00:00 |
Arvid Norberg
|
a2a4b61b5d
|
fix library ABI to not depend on logging being enabled
|
2013-03-10 09:19:58 +00:00 |
Arvid Norberg
|
a0caa0f4b2
|
disable invariant_check functions when invariant checks are disabled
|
2013-02-25 04:13:46 +00:00 |
Arvid Norberg
|
5b48490005
|
fix logging build
|
2013-02-05 06:50:38 +00:00 |
Arvid Norberg
|
f73fa778d6
|
slight refactoring to remove a dependency on session_impl in rpc_manager
|
2013-02-05 04:18:44 +00:00 |
Arvid Norberg
|
d6fecf4c34
|
make condition variable c++11 compatible
|
2013-01-21 22:52:34 +00:00 |
Arvid Norberg
|
c14916e119
|
unify session plugins and extension functors (internally)
|
2013-01-07 04:19:19 +00:00 |
Arvid Norberg
|
cd4b38cfc3
|
fix bug in disconnect candidate torrent function
|
2013-01-02 08:09:21 +00:00 |
Arvid Norberg
|
970ddba29b
|
refactor find_disconnect_candidate_torrent to match libtorrent_aio
|
2013-01-02 07:39:02 +00:00 |
Arvid Norberg
|
aab59d04c7
|
improve the external IP discovery to work with multiple external IPs (specifically IPv4 and IPv6)
|
2013-01-01 23:12:16 +00:00 |
Arvid Norberg
|
ac5a9e9882
|
introduce global connection priority for improved swarm performance
|
2012-12-31 06:54:54 +00:00 |
Arvid Norberg
|
65e02c23e8
|
improve support for loading torrents out of resume files
|
2012-11-08 02:07:10 +00:00 |
Arvid Norberg
|
f3ec86169e
|
merged swarm startup optimization from libtorrent_aio
|
2012-11-03 03:50:12 +00:00 |
Arvid Norberg
|
01f70bfd84
|
add session logging function
|
2012-10-18 15:14:18 +00:00 |
Arvid Norberg
|
9ed60479ce
|
merged udp socket fix from RC_0_16
|
2012-10-07 23:34:44 +00:00 |
Arvid Norberg
|
35032a6950
|
merge verbose logging feature from libtorrent_aio
|
2012-10-06 23:45:36 +00:00 |
Arvid Norberg
|
83754b3427
|
merged post_torrent_updates assert from libtorrent_aio
|
2012-10-06 14:31:14 +00:00 |
Arvid Norberg
|
32b4b5926a
|
merged fix from RC_0_16
|
2012-09-30 19:35:08 +00:00 |
Arvid Norberg
|
5e2ff1a246
|
merged logging cleanup from RC_0_16
|
2012-09-27 23:04:51 +00:00 |
Arvid Norberg
|
0685fb91bd
|
DHT throttling fix
|
2012-08-03 05:13:40 +00:00 |
Arvid Norberg
|
7c7b927e07
|
improve connection distribution fairness between torrents
|
2012-07-04 20:41:22 +00:00 |
Arvid Norberg
|
96aa1f162b
|
fix for udp_socket observers and some dht warning fixes
|
2012-06-30 15:30:38 +00:00 |
Arvid Norberg
|
d73bbf5053
|
clean up the udp socket and its consumers by adding an observer interface and have the udp tracker, utp socket manager and dht tracker subscribe to it instead of going through the session_impl. This probably improves performance a tiny bit but primarily improves modularization and testability
|
2012-06-22 04:21:20 +00:00 |
Arvid Norberg
|
2b9b2a188a
|
remove uTP delayed ack and instead send acks when the udp socket has been drained. simplify the udp socket to use null_buffers and allocate less memory for buffers. this also eliminated the race condition when resizing the udp socket receive buffer which greatly simplified it
|
2012-06-21 15:05:57 +00:00 |
Arvid Norberg
|
3c0e7e0a4a
|
keep counters of the number of active downloading and finished torrents in order to have a cheap way of prioritizing peer connections for downloading torrents over finished ones
|
2012-06-21 03:51:39 +00:00 |
Arvid Norberg
|
cec9a16cc1
|
back-ported observer for set_external_ip for DHT
|
2012-04-30 06:30:35 +00:00 |
Arvid Norberg
|
918dce1341
|
back-ported part of the alert_dispatcher patch for the DHT
|
2012-04-30 05:39:35 +00:00 |
Arvid Norberg
|
9b8ce67302
|
fixed bug in external IP voting
|
2012-03-19 00:31:21 +00:00 |
Arvid Norberg
|
a2521bd23c
|
fix a bunch of issues to properly support dynamic linking of libtorrent with visibility=hidden. Still requires a small patch to boost
|
2012-03-18 23:31:04 +00:00 |
Arvid Norberg
|
b58a96d76b
|
log stats of incoming piece requests
|
2012-03-09 06:24:01 +00:00 |
Arvid Norberg
|
ccf9c5a0fd
|
log more stats
|
2012-03-02 08:52:54 +00:00 |
Arvid Norberg
|
3ef9190b01
|
fix export for settings_map symbol for python binding
|
2012-02-25 08:02:52 +00:00 |
Arvid Norberg
|
eef0f03343
|
fixed session logger destruction order issue
|
2012-02-21 06:47:08 +00:00 |
Arvid Norberg
|
679abf2e57
|
this time, actually remove the encrypted torrent (AES-256 encrypted peer connections)
|
2012-02-09 06:47:22 +00:00 |
Arvid Norberg
|
ef1d8b5921
|
fix build
|
2012-01-20 06:07:19 +00:00 |
Arvid Norberg
|
ed56520d24
|
more asserts around state updates
|
2012-01-20 05:40:32 +00:00 |
Arvid Norberg
|
4a40e68a82
|
landed ssl branch back into trunk
|
2012-01-14 16:04:25 +00:00 |
Arvid Norberg
|
152cee19f1
|
add compile-time feature to enable logging of all peer requests
|
2011-12-29 12:15:29 +00:00 |
Arvid Norberg
|
cab1f3d207
|
fix issue when peer list is full, previously we would sometimes reject new connections
|
2011-11-24 17:50:57 +00:00 |
Arvid Norberg
|
fdc5e7e8b2
|
keep track of where redundant downloads come from. make the timing out of block requests more reasonable in an attempt to actually complete pieces from other peers when stuck on a slow one
|
2011-11-16 02:29:59 +00:00 |
Arvid Norberg
|
0320546fee
|
fix build
|
2011-11-15 06:47:02 +00:00 |
Arvid Norberg
|
c4232065d8
|
introduced a more scalable API for torrent status updates (post_torrent_updates())
|
2011-11-15 02:34:00 +00:00 |
Arvid Norberg
|
96adfc2ad5
|
windows build fixes
|
2011-11-13 05:51:03 +00:00 |
Arvid Norberg
|
15f20c887d
|
fix msvc build
|
2011-10-22 17:44:40 +00:00 |
Arvid Norberg
|
7d20c0b0c4
|
log CPU usage of network thread
|
2011-10-17 17:12:08 +00:00 |
Arvid Norberg
|
8b6522a763
|
log buffer sizes passed to read() and write() at the socket layer (to identify performane problems)
|
2011-10-17 06:54:02 +00:00 |
Arvid Norberg
|
aab4cb6937
|
log number of asio messages passed through the queue per second (to track down performance issue)
|
2011-10-17 05:17:21 +00:00 |
Arvid Norberg
|
01405f32ee
|
added async_add_torrent for increased performance when adding many torrents (no documentation yet though)
|
2011-10-12 10:27:17 +00:00 |
Arvid Norberg
|
2741563711
|
set alert_mask early
|
2011-10-08 09:52:36 +00:00 |
Arvid Norberg
|
469414d486
|
initial BitTorrent over SSL support
|
2011-09-12 03:51:49 +00:00 |
Arvid Norberg
|
92bcb9ebfd
|
feature to encrypt peer connections with a secret AES-256 key stored in .torrent file
|
2011-09-05 05:50:41 +00:00 |
Arvid Norberg
|
bf9d864dd2
|
stronger low-pass filter for iops reporting
|
2011-07-04 05:52:15 +00:00 |
Arvid Norberg
|
de3ea9214a
|
log a low-pass filtered iops to stats log
|
2011-07-03 17:21:45 +00:00 |
Arvid Norberg
|
90d8030269
|
log VM stats alongside the session stats
|
2011-06-28 22:20:34 +00:00 |
Arvid Norberg
|
3ba914b419
|
fix build
|
2011-06-14 06:10:35 +00:00 |
Arvid Norberg
|
88fa0b9393
|
optimize send buffer allocation and deallocation by not allowing requiring contiguous buffers
|
2011-05-19 02:41:28 +00:00 |
Arvid Norberg
|
a73960aa5a
|
support release asserts
|
2011-05-08 09:04:59 +00:00 |
Arvid Norberg
|
22f20253f8
|
support turning logging on and off during run-time when built with stats logging
|
2011-04-06 06:27:42 +00:00 |
Arvid Norberg
|
ddd21cb526
|
missing change from last check-in
|
2011-03-27 20:46:20 +00:00 |
Arvid Norberg
|
e9459b4df8
|
rss fixes
|
2011-03-23 02:46:22 +00:00 |
Arvid Norberg
|
0b25b87593
|
add a bunch more stats logged to session stats
|
2011-03-17 05:31:06 +00:00 |
Arvid Norberg
|
6db11079c8
|
add performance warning when disk write queue exceeds half of the write cache size
|
2011-03-16 07:45:51 +00:00 |
Arvid Norberg
|
27c1bc632d
|
introduced pop_alerts() which pops the entire alert queue in a single call
|
2011-03-14 02:59:46 +00:00 |
Arvid Norberg
|
c21100a9a5
|
log failed and redundant bytes
|
2011-03-13 04:34:57 +00:00 |
Arvid Norberg
|
03a7442532
|
add disk cache stats to session stats
|
2011-03-11 07:37:12 +00:00 |
Arvid Norberg
|
f90f9f6609
|
fixed alert queue size limit bug when restoring setting from session state
|
2011-03-07 00:36:51 +00:00 |
Arvid Norberg
|
019b682cf9
|
fixed logging build
|
2011-03-04 07:00:27 +00:00 |
Arvid Norberg
|
0aff6803fb
|
fix to IP filter exemptions
|
2011-03-02 17:37:10 +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
|
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
|
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
|
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
|
e079907252
|
more end-game piece picker optimization (early exit)
|
2011-02-08 04:08:04 +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
|
88663bfbde
|
log more peer errors in stats log
|
2011-02-04 04:31:20 +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
|
d393bb4097
|
report number of peers blocked on disk in session_status
|
2011-01-30 10:04:15 +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
|
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
|
c223291fb4
|
added support for RSS feeds
|
2011-01-18 03:41:54 +00:00 |
Arvid Norberg
|
ae41b2598b
|
fix non-dht build
|
2010-12-29 02:17:44 +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
|
451c583023
|
more robust mechanism to determine external IP
|
2010-12-24 01:31:41 +00:00 |
Arvid Norberg
|
650f02eba7
|
fixed some windows build issues
|
2010-12-19 08:12:31 +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
|
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
|
e5f980d80d
|
merged uTP branch into trunk (yay)
|
2010-11-29 01:33:05 +00:00 |
Arvid Norberg
|
d1cb2d52ff
|
fixed build issues with with vernose logging enabled
|
2010-11-26 20:44:48 +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
|
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
|
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
|
b747cdab8a
|
merged all proxy settings into a single one
|
2010-08-23 06:27:18 +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
|
fd5f1bf80b
|
improved SOCKS5 support
|
2010-08-03 09:08:37 +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
|
a0cef76bf2
|
fixed race condition around m_abort in session_impl
|
2010-06-24 21:43:00 +00:00 |
Arvid Norberg
|
26c4a819c8
|
removed the reuse-address flag on the listen socket
|
2010-06-17 17:14:56 +00:00 |
Arvid Norberg
|
cdf05a9c9c
|
moved UDP trackers over to use a single socket
|
2010-05-30 01:33:03 +00:00 |
Arvid Norberg
|
384bfdec48
|
added anonymous mode to disable some particular features that might give away the user's and the client's identity
|
2010-04-13 04:30:34 +00:00 |
Arvid Norberg
|
7e851818b1
|
support more fine-grained torrent states between which peer sources it announces too
|
2010-03-29 00:34:04 +00:00 |
Arvid Norberg
|
c14042b29e
|
remove unused declarations and added a small piece of documentation
|
2010-03-25 04:47:56 +00:00 |
Arvid Norberg
|
b78aca9a53
|
fixed logging build
|
2010-03-20 09:35:45 +00:00 |
Arvid Norberg
|
79bd8fcd52
|
made the default cache size depend on the amount of physical RAM. and fixed disk thread settings update when loading through load_state
|
2010-03-10 07:14:10 +00:00 |
Arvid Norberg
|
013cef68e8
|
add flags to session::save_state to filter what is saved
|
2010-03-06 07:49:40 +00:00 |
Arvid Norberg
|
281b6368f7
|
deprecate old state saving functions, merge dht state with session state
|
2010-03-04 16:42:39 +00:00 |
Arvid Norberg
|
9d6cdb0c89
|
solaris build fixes
|
2010-03-03 07:42:51 +00:00 |