arvidn
9a0092c120
fix some warnings
2015-08-16 12:17:23 -04:00
arvidn
16bb2de6ed
fix some warnings
2015-08-13 23:52:25 -04:00
Arvid Norberg
68bc4f2cf4
Merge pull request #12 from mlt/wip/i2p
...
Few i2p fixes
2015-08-13 21:55:27 -04:00
Alden Torres
b303a36ac2
Removed unnecessary full namespace reference to udp::endpoint in new dht_direct_request feature.
...
Add default value to userdata argument in dht_direct_request.
Minor spelling fix.
2015-08-12 00:49:09 -04:00
Steven Siloti
1b4b1c4403
fix error handling for DHT direct requests
2015-08-10 20:33:05 -07:00
Steven Siloti
1ff48aef60
add comment
2015-08-10 20:33:04 -07:00
Steven Siloti
3564562dab
pass raw buffer in dht_direct_response_alert
2015-08-10 20:33:04 -07:00
Steven Siloti
86fd8c3048
enable arbitrary direct dht requests and extension dht requests
...
If you're wondering why I used an alert for handling responses but not requests,
it's because the former was easy to do that way but the latter would have
involved some major refactoring or kludging. The DHT node is written with the
(IMO reasonable) assumption that all responses will be generated immediately, so
there was no way to easily accommodate getting a response asynchronously via
an alert.
2015-08-10 20:33:04 -07:00
arvidn
a81ca2391b
fix some warnings
2015-08-10 20:03:24 -04:00
arvidn
4fa0aa62da
simulate IP routes, interfaces and page size when building in simulation mode
2015-08-09 15:01:01 -04:00
arvidn
1c1698459c
fix warnings
2015-08-08 22:53:11 -04:00
Arvid Norberg
27c5a28637
Merge pull request #70 from thomas-yuan/master
...
Call callback function immediately when get data for mutable data.
2015-08-08 21:51:18 -04:00
Thomas
e51b61870a
Call callback function immediately when get mutable data.
2015-08-08 20:28:53 -04:00
arvidn
46803b75f8
support building libtorrent in simulation mode (using libsimulator, which is a git submodule)
2015-08-07 21:31:59 -04:00
Alden Torres
eef9f16b3b
Removed unused flag bandwidth-limit-logging and related code.
2015-08-04 01:47:15 -04:00
Steven Siloti
e6b3df3696
pass torrent_handle by const ref in the plugin api
2015-07-25 09:57:55 -07:00
Steven Siloti
423a18ecb1
add missing include
2015-07-25 08:58:32 -07:00
Steven Siloti
e0e06bc87a
switch to peer_connection_handle for optimistic unchoking
...
This is necessary to enable external plugins since the vector is passed to
plugins via on_optimistic_unchoke.
2015-07-23 20:48:35 -07:00
Steven Siloti
2c1f24c036
switch to session_handle in plugin api
2015-07-23 20:13:32 -07:00
Steven Siloti
fbc67b4e21
switch to torrent_handle in plugin api
2015-07-23 19:52:23 -07:00
Mikhail Titov
df21a7e8ce
Use scrape & i2p bitset flags for request
2015-07-14 14:13:10 -05:00
Steven Siloti
9bf1d6c5e9
peer_connection_handle
2015-07-12 14:40:03 -07:00
Alden Torres
a856ae6e9b
Added dht_get_peers and dht_announce at session level.
...
Refactored dht_put_item to dht_put_immutable_item in session_impl since the get operations are not overloaded (consistency).
Added allow_threading_guard to add_dht_node python binding.
Making dht_put_item in session returns a zeroed hash if TORRENT_DISABLE_DHT (avoid unnecessary calculation and it's more consistent).
Added missing DHT operations to the python binding.
Added missing allow_threading_guard to add_dht_node in the python binding.
2015-07-12 10:37:16 -04:00
arvidn
42638c3540
don't ignore errors from setup_listener()
2015-07-11 23:16:37 -04:00
arvidn
2739def57f
minor cleanups. use libtorrent typedefs for asio. failing to bind IPv6 UDP socket is no longer fatal. removed some redundant listen_failed_alerts
2015-07-11 23:01:27 -04:00
arvidn
ed8e4135b2
move include statement to correct place
2015-07-11 22:04:04 -04:00
arvidn
2ab445135a
only retry binding the socket to a new port if the last attempt failed with address-in-use. On other errors, give up immediately
2015-07-11 18:49:53 -04:00
arvidn
a63cfd2a95
improve logging (specifically don't emit bandwidth limiter logs when it's disabled)
2015-07-05 18:44:02 -04:00
Alden Torres
f772675d95
Removed uTP implied port logic from dht_announce.
2015-07-01 15:30:09 -04:00
Alden Torres
fcac7140f8
Added dht_get_peers and dht_announce at session_impl level.
2015-07-01 15:30:08 -04:00
arvidn
94d6e06c97
first step in making opening all the listen sockets a bit more reliable
2015-06-29 23:10:09 -04:00
arvidn
a754559ac6
improve logging aroud binding listen sockets
2015-06-28 09:13:59 -04:00
Mikhail Titov
77ca1ac16f
Quadruple handshake timeout for i2p
2015-06-24 19:40:17 -05:00
arvidn
8b66fbe194
fix bug in previous commit
2015-06-20 18:17:49 -04:00
arvidn
a500ff57be
improve logging of the choker and reliability of the test_auto_unchoke
2015-06-19 01:43:09 -04:00
arvidn
5cb095f6d2
support using 0 disk threads (to perform disk I/O in network thread)
2015-06-14 16:00:04 -04:00
arvidn
aa6598b2e6
don't return an internal session_settings type from the session, return a settings_pack instead
2015-06-07 00:23:30 -04:00
arvidn
9af8841244
remove some unnecessary asio typedefs in the libtorrent namespace, just pull ip::tcp and ip::udp
2015-06-06 13:49:18 -04:00
arvidn
41533205be
drop support for boost 1.35 and fix some more references to the asio namespace
2015-06-06 02:10:53 -04:00
Arvid Norberg
d43f7b56a2
update copyright year
2015-06-03 05:18:48 +00:00
Arvid Norberg
0351326add
separate the main thread and the io_service from session_impl. The io_service object is now simply run() in the main thread, all initialization is done by posting messages to it. This generalizes session_impl to some degree, enables future expansion to run in multiple threads (although, the peers and torrents don't support this). This patch also makes it possible to pass in a third party io_service to the session, but at this point that's mostly useful for tests, as it's not well supported
2015-06-03 03:04:44 +00:00
Arvid Norberg
9b0313bd8e
hold settings_pack by shared_ptr when passing it across thread boundaries. don't allocate it on the heap redundantly
2015-05-29 05:27:53 +00:00
Arvid Norberg
e44c8e9002
optimize logging of DHT packets by deferring copying and printing, to only do it if the alert category is enabled
2015-05-28 20:36:22 +00:00
Arvid Norberg
27cbfa164e
minor cleanup
2015-05-28 14:46:12 +00:00
Arvid Norberg
7f5aff9823
don't trigger recalculating auto-managed unconditionally when adding a new torrent, only in the case where it will most likely be started right away
2015-05-27 20:21:50 +00:00
Arvid Norberg
06bf225237
fix release build and tune want_tick
2015-05-26 20:09:19 +00:00
Arvid Norberg
09bc072c31
inactive/auto managed fixes. fix client_test key input
2015-05-26 18:39:49 +00:00
Arvid Norberg
c6f8dd408a
optimize recalculate auto-managed
2015-05-25 21:46:42 +00:00
Arvid Norberg
0052fa6c19
some cleanup to dht observers (don't expose internals)
2015-05-22 02:42:26 +00:00
Arvid Norberg
0de44067aa
fix warnings
2015-05-19 04:59:31 +00:00
Arvid Norberg
607e708bc4
fix warnings
2015-05-19 03:13:49 +00:00
Arvid Norberg
88fe6eba9c
fix issues introduced in dht logging patch
2015-05-17 20:59:18 +00:00
Arvid Norberg
c871610408
fix bug in DHT logging. clean up some whitespace
2015-05-17 02:00:43 +00:00
Arvid Norberg
58ae099cf8
clean up disk_io_job a bit to avoid old-style casts
2015-05-16 20:41:37 +00:00
Arvid Norberg
99de70604a
remove dht-verbose logging build configuration. tie it to the main logging configuration (which now is on by default) and make it less costly when dht logging alerts are disabled
2015-05-16 19:29:49 +00:00
Arvid Norberg
12c9d3de26
fix more warnings
2015-05-16 18:35:47 +00:00
Arvid Norberg
6a87dc7d84
fix some warnings
2015-05-16 16:24:11 +00:00
Arvid Norberg
2bf4519bee
make the torrent hold a pointer to the ip_filter instead of relying on a session reference
2015-05-16 06:33:37 +00:00
Arvid Norberg
494b425ea1
fix warnings and a peer logging bug
2015-05-10 18:38:10 +00:00
Arvid Norberg
1357fd5265
clean up usage of printf attribute (encapsulate it in a macro)
2015-05-10 05:11:51 +00:00
Arvid Norberg
b60934288b
turn DHT logging into alerts instead of writing to a file
2015-05-10 04:54:02 +00:00
Arvid Norberg
6557910c7f
remove the DHT's last dependency on session_impl
2015-05-09 18:06:02 +00:00
Arvid Norberg
a83dcbaaf0
removed access-log build option and log parser. added incoming_request_alert. This feature can now be implemented by clients
2015-05-09 03:04:08 +00:00
Arvid Norberg
f90537c52d
fix some more coverity issues and add more todo comments
2015-05-05 02:32:14 +00:00
Arvid Norberg
8fdacf9534
address coverity issues and build issue with non atomic 64 bit operations
2015-05-03 22:21:19 +00:00
Arvid Norberg
4f216dece3
factor out strings of peer logs to be enums instead, in peer_log_alert
2015-05-03 02:53:54 +00:00
Arvid Norberg
ab0c97755e
merged fixes from RC_1_0
2015-04-29 05:48:09 +00:00
Arvid Norberg
93a19b44c0
fix another format string issue and add comments to kademlia
2015-04-26 06:25:08 +00:00
Arvid Norberg
2fb1a0f3c7
fix msvc build issue
2015-04-26 01:25:45 +00:00
Arvid Norberg
821e34c795
fix examples build. fix print formatting bugs. fix some gcc warnings
2015-04-25 04:22:51 +00:00
Arvid Norberg
0b063de9ff
fix more warnings
2015-04-21 04:30:34 +00:00
Arvid Norberg
3951377d95
fix include paths for warning push and pop headers
2015-04-21 01:16:28 +00:00
Arvid Norberg
4fd230dbe5
fix build and some warnings
2015-04-20 00:01:27 +00:00
Arvid Norberg
408232cfc8
raise warning level. fix a few of them. filter out warnings from boost
2015-04-18 02:33:39 +00:00
Arvid Norberg
1faf2e201f
inversed TORRENT_LOGGING build config to enable logging by default. It's now disabled by TORRENT_DISABLE_LOGGING
2015-04-17 01:15:33 +00:00
Arvid Norberg
bb48b6e83c
eliminate one more session dependency in peer_connection
2015-04-10 01:50:42 +00:00
Arvid Norberg
6d09050d08
fix build without deprecated functions
2015-04-06 00:06:26 +00:00
Arvid Norberg
b07b208a4a
rate limit how often recalculate_auto_managed can be called (it's expensive)
2015-04-05 19:35:58 +00:00
Arvid Norberg
013ed36f09
landed alert_queue feature branch into trunk
2015-04-03 20:15:48 +00:00
Arvid Norberg
837e709628
deprecate RSS API
2015-03-28 17:31:27 +00:00
Arvid Norberg
ccc7e45406
landed mutable torrents branch in trunk
2015-03-21 00:12:40 +00:00
Arvid Norberg
37225b71ae
const static -> static const (thanks gubatron). helps swigs parser
2015-03-14 00:42:27 +00:00
Arvid Norberg
6c1df7eb55
landed the bdecode branch in master. lazy_bdecode/lazy_entry is now being replaced by bdecode/bdecode_node
2015-03-12 05:20:12 +00:00
Arvid Norberg
c1dc982f4f
deprecate the ptime type and related time types. just use boost::chrono / std::chrono
2015-03-12 04:34:54 +00:00
Arvid Norberg
0c8aee014c
implemented utp extension header to indicate the reason to close the connection
2015-02-28 19:51:15 +00:00
Arvid Norberg
91270a0c2b
make operation_t public and document it. include peer disconnects in client_test log
2015-02-15 05:17:09 +00:00
Arvid Norberg
9b91508c38
clean up session_interface and tracker_manager a bit. work on making tracker_manager more testable
2015-02-01 14:30:43 +00:00
Arvid Norberg
d9e69db0cb
actually make use of the max_failcount setting
2015-01-20 06:26:22 +00:00
Arvid Norberg
54eb499803
make post_torrent_updates more flexible by allowing to pass flags to it. The same flags as torrent_handle::status. Also make the default return accurante progress
2015-01-20 02:46:23 +00:00
Arvid Norberg
431fa2ac55
fix python binding build (and expose the new dht stats alert)
2015-01-18 21:36:24 +00:00
Arvid Norberg
22a02f4a1f
make dht_tracker be held by shared_ptr instead of intrusive_ptr. remove redundant performance counter (total dht sent/received). report DHT IP overhead to the IP overhead counters
2015-01-17 22:06:30 +00:00
Arvid Norberg
58d93e5aa1
add new (non-deprecated) access to dht stats, asynchronously via an alert
2015-01-17 17:02:58 +00:00
Arvid Norberg
b9b657c3d4
post alerts instead of writing to a file, in local peer discovery, when logging is enabled
2015-01-16 23:01:14 +00:00
Arvid Norberg
2943bd4d7d
make test_privacy more reliable
2015-01-14 01:59:23 +00:00
Arvid Norberg
c9075a530d
fix build
2015-01-06 22:17:22 +00:00
Arvid Norberg
1a53a454ec
fix ssl unit test
2015-01-06 08:16:03 +00:00
Arvid Norberg
0f37e3403c
transition from intrusive_ptr to shared_ptr. don't export initialize_default_settings
2015-01-06 08:08:49 +00:00
Arvid Norberg
1b254e16c2
remove comment
2015-01-05 12:25:10 +00:00
Arvid Norberg
bb33b061e4
clean up session_impl
2015-01-04 22:26:26 +00:00
Arvid Norberg
35b41858cf
deprecated session_status and session::status() in favor of performance counters
2015-01-04 21:31:02 +00:00
Arvid Norberg
68ffd3c47c
restore breakage of recalculate_automanaged_torrents, and fix the logic for checking torrents
2015-01-04 21:14:46 +00:00
Arvid Norberg
1218e328cd
SSL fixes (especially over uTP)
2015-01-04 01:04:56 +00:00
Arvid Norberg
764b09d6b5
make the peer fingerprint a regular setting and remove it from the main session constructor argument list
2014-12-31 15:51:45 +00:00
Arvid Norberg
1039d4ae86
tweak some TODO comments and fix one
2014-12-31 14:41:35 +00:00
Arvid Norberg
0977d94dbc
merged changes from RC_1_0
2014-12-25 11:24:02 +00:00
Arvid Norberg
ae04b80fe1
cancel non-critical DNS lookups when shutting down, to cut down on shutdown delay
2014-12-17 02:44:27 +00:00
Arvid Norberg
a3d1a493fd
disable logging alerts in client_test
2014-12-10 09:45:38 +00:00
Arvid Norberg
1ce3bdf0d0
update send and received byte performance counters immediately, to avoid the one second quantization in stats
2014-12-10 05:49:17 +00:00
Arvid Norberg
09bc1550e9
simplify the debug logging mechanism. There's now only one build option, logging=on or logging=off. When logging is enabled, the log level is controlled by the alert mask. All log events are delivered as alerts and it's up to the client to write them to disk in whatever way seems appropriate. removed the pointless logger plugin
2014-12-09 09:08:26 +00:00
Arvid Norberg
658e2ceefd
merged Steven Siloti's peer crypto patch into trunk
2014-11-23 06:14:47 +00:00
Arvid Norberg
601f0dc434
merged changes from RC_1_0
2014-11-03 06:15:51 +00:00
Arvid Norberg
34af25beaa
merged chagnes from RC_1_0
2014-11-01 22:47:56 +00:00
Arvid Norberg
02a9ea18b7
deprecated auto_expand_choker. started factoring out choker logic into its own translation unit (preparing for making it unit testable)
2014-10-22 22:06:56 +00:00
Arvid Norberg
8d99b6eabb
fixed ssl typo
2014-10-21 23:53:18 +00:00
Arvid Norberg
ca6bb1ebd9
minor cleanup of open_listen_port internally
2014-10-21 22:08:48 +00:00
Arvid Norberg
3db32f67b5
remove option TORRENT_DISABLE_FULL_STATS
2014-10-21 21:45:35 +00:00
Arvid Norberg
ce9ff9885b
move DHT transfer counters to performance_counters
2014-10-21 21:36:45 +00:00
Arvid Norberg
7249122329
move tracker transfer counters over to use performance_counters internally as well
2014-10-21 21:24:15 +00:00
Arvid Norberg
cea5585993
remove stats logging functionality from libtorrent. This has been moved to a helper class part of libtorrent-webui, utility library
2014-10-21 19:58:12 +00:00
Arvid Norberg
9b37efe6a8
first steps towards removing session_impl dependency from tracker connections, to improve their testability
2014-10-21 00:28:51 +00:00
Arvid Norberg
d308dce99b
CMakeList.txt fix
2014-10-15 03:01:39 +00:00
Arvid Norberg
99cd0c7a08
merged changes from RC_1_0
2014-10-14 16:36:06 +00:00
Arvid Norberg
9b8e7bc169
fix typo in ssl patch
2014-10-06 03:18:26 +00:00
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
d296960efa
fix build with verbose logging
2014-10-04 19:54:12 +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
6a4a5419c2
one more fix
2014-09-28 04:05:44 +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
ad7d74f255
merged fixes from RC_1_0
2014-09-13 19:47:51 +00:00
Arvid Norberg
4d57456199
merged changes from RC_1_0
2014-09-02 06:28:27 +00:00
Arvid Norberg
862844e546
merged changes from RC_1_0
2014-08-22 07:56:10 +00:00
Arvid Norberg
524384045c
transition to use boost.random instead of rand() and custom pseudo random generator
2014-08-16 20:26:00 +00:00
Arvid Norberg
3f88389f05
merged changes from RC_1_0
2014-08-16 07:46:06 +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
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
65bb1d0006
pass all the arguments to peer connections as an argument pack
2014-07-14 04:32:41 +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
374380667c
make default_storage a bit more robust
2014-07-10 01:59:35 +00:00
Arvid Norberg
a6f345181f
fixed some unused argument warnings
2014-07-07 06:28:48 +00:00
Arvid Norberg
7351389ce8
land libtorrent_aio branch in trunk
2014-07-06 19:18:00 +00:00
Arvid Norberg
6ef1b98717
merged compiler warning fixes from RC_1_0
2014-07-05 14:10:25 +00:00
Arvid Norberg
6c6fe4dfe2
merged fixes of warnings from RC_1_0
2014-07-04 23:40:31 +00:00
Arvid Norberg
34737965d1
remove leftover comparison from when there was more than one proxy setting
2014-07-01 07:48:34 +00:00
Arvid Norberg
6043e14131
remove pch.hpp
2014-06-28 23:45:46 +00:00
Arvid Norberg
6d95b48afa
only attempt to set the TOS on socket when configured
2014-06-15 17:44:27 +00:00
Arvid Norberg
20ef852461
merged upnp fix from RC_0_16
2014-06-15 17:30:40 +00:00
Arvid Norberg
2125efbbd8
merged streaming changes from libtorrent_aio into trunk
2014-06-06 01:26:18 +00:00
Arvid Norberg
5f98dec91b
revert mistake in queuing logic
2014-05-22 22:07:01 +00:00
Arvid Norberg
a1e7d3229d
improve queuing logic of inactive torrents (dont_count_slow_torrents)
2014-05-18 22:17:51 +00:00
Arvid Norberg
5b89c3f5f9
merged some of steven siloti's changes. expose optimistic unchoke logic to plugins
2014-05-12 07:28:34 +00:00
Arvid Norberg
e225259481
fix some msvc warnings
2014-05-10 03:23:05 +00:00
Arvid Norberg
474e77039f
removed set_ratio feature
2014-05-03 17:11:55 +00:00
Arvid Norberg
f037704539
clean up peer-id in bt_peer_connection (for privacy mode) and reduce dependency on session
2014-04-22 23:37:21 +00:00
Arvid Norberg
140ed20c93
fix stats bug
2014-03-25 09:17:48 +00:00
Arvid Norberg
6f0a7f3f3b
fix valgrind build issue
2014-03-25 07:19:21 +00:00
Arvid Norberg
946aecdb59
fixed some warnings
2014-03-23 19:13:21 +00:00
Arvid Norberg
682ceff21b
improve messaging of assert caused by precondition violation
2014-03-23 07:40:43 +00:00
Arvid Norberg
6f82d3b8ae
merged i2p_alert fix from RC_0_16
2014-03-15 22:20:19 +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
a943fec777
update copyright
2014-02-23 19:12:25 +00:00
Arvid Norberg
63c6e495bd
don't use shared_from_this for session_impl
2014-02-21 04:30:59 +00:00
Arvid Norberg
a71fbc4f68
include reason in peer_blocked_alert
2014-02-07 17:35:56 +00:00
Arvid Norberg
6c22d426d4
make all unit tests pass msvc's /RTCc instrumentation (no implicit integer truncation in casts)
2014-02-05 09:38:32 +00:00
Arvid Norberg
60af1aa451
update peer ranks when our external IP changes
2014-01-23 03:31:36 +00:00
Arvid Norberg
9d03019050
fix division by zero in send buffer debug logging
2014-01-22 01:59:24 +00:00
Arvid Norberg
e0644ce8f5
invariant check macro fixes
2014-01-21 19:26:09 +00:00
Arvid Norberg
9ab349f1d0
improve dht error reporting
2014-01-20 09:20:47 +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
90ef2cb343
non-auto-managed torrents no longer count against the torrent limits
2014-01-08 03:51:55 +00:00
Arvid Norberg
53a62344ca
fix port mapping functions in session
2013-12-31 22:24:56 +00:00
Arvid Norberg
3858025c3c
expose UPnP and NAT-PMP mapping in session object
2013-12-31 20:42:37 +00:00
Arvid Norberg
4e6b1cfbfb
update copyright
2013-12-25 17:07:16 +00:00
Arvid Norberg
396e5bbb37
fixed missing case in save_struct
2013-12-09 08:00:21 +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
9c761f6777
fix bug in load/save settings (introduced by altering pe_settings layout)
2013-12-03 09:10:16 +00:00
Arvid Norberg
a05103154b
remove debug logging to print field offsets and struct sizes
2013-12-02 10:00:03 +00:00
Arvid Norberg
629baa3622
reorder some structs to reduce padding
2013-11-26 02:00:02 +00:00
Arvid Norberg
aba8704313
fix logging build
2013-11-18 07:05:56 +00:00
Arvid Norberg
90e7a4c9e3
merged some rate limiter polish from libtorrent_aio
2013-11-02 03:26:53 +00:00
Arvid Norberg
4459fd89f7
merged i2p fix from RC_0_16
2013-10-28 02:41:54 +00:00
Arvid Norberg
aa4064316e
add info_hash to torrent_delete_failed_alert
2013-10-27 23:39:24 +00:00
Arvid Norberg
cbe3a72a6e
merged i2p fix from RC_0_16
2013-10-27 19:56:37 +00:00
Arvid Norberg
3b882a35de
fix hang in unit test caused by disabling the DHT
2013-10-10 09:08:56 +00:00
Arvid Norberg
e4c805c988
include socket type in listen_failed_alert and listen_succeeded_alert
2013-10-06 06:32:33 +00:00
Arvid Norberg
79a29d2bb0
fix valgrind build with stats logging enabled
2013-10-03 15:39:19 +00:00
Arvid Norberg
64b563fd06
attempt to trigger valgrind errors earlier
2013-10-02 21:51:30 +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
3d6145f713
resolve duplicate torrents by URL as well (by linear scan)
2013-09-15 12:29:09 +00:00
Arvid Norberg
b81dbc4669
fix stats logging
2013-09-15 05:14:03 +00:00
Arvid Norberg
a386d8aca0
merged build fix without exceptions from RC_0_16
2013-09-14 10:26:55 +00:00
Arvid Norberg
1aa47fc13e
add more utp statistics and make the congestion controller less aggressive when the up-link is not saturated
2013-09-14 10:06:48 +00:00
Arvid Norberg
515cd24a8c
if setting socket send or receive buffer size fails, reset it to the previous value
2013-09-03 08:39:30 +00:00
Arvid Norberg
275c340231
make socket buffer sizes affect the udp socket as well. for high_performance_seed preset, set 1 MB socket buffers. only run test_rate() in proper release mode (without invariant checks and debug-iterators). lower the time limit of test_rate. update regression tests to disable invariant checks and debug iterators when building release mode
2013-09-02 09:24:34 +00:00
Arvid Norberg
3afe6c23a0
merged tracker key patch from RC_0_16
2013-08-31 21:06:43 +00:00
Arvid Norberg
b6083fbc28
first steps towards supporting SSL over uTP. moved the TODO comment and made it describe the next step. Optimized session destruction in unit tests, hopefully shaving off a bit of test run-time (and now supports asio-debugging of unit tests)
2013-08-31 20:19:03 +00:00
Arvid Norberg
8a0b4d02da
merged fix from RC_0_16
2013-08-26 05:50:26 +00:00
Arvid Norberg
0f57615ea3
attempt at fixing shut-down hang
2013-08-21 15:55:24 +00:00
Arvid Norberg
d5c715bf96
added missing asio-debugging mark-up
2013-08-21 15:41:19 +00:00
Arvid Norberg
023116db6f
merge ssl test fix from RC_0_16
2013-08-17 22:29:34 +00:00
Arvid Norberg
1b60710493
support extensions removing torrents in tick()
2013-08-15 06:10:41 +00:00
Arvid Norberg
d782fc224c
merged SSL fix from RC_0_16
2013-08-05 16:20:25 +00:00
Arvid Norberg
9319c1e073
make it possible to add torrent plugins via add_torrent_params
2013-08-02 09:42:51 +00:00
Arvid Norberg
e7db8d37a2
merge deprecation of wstring overloads from RC_0_16
2013-08-02 05:03:22 +00:00
Arvid Norberg
c0a0769aea
merged fix from RC_0_16
2013-08-02 01:25:52 +00:00
Arvid Norberg
beae6cece0
merged ssl fix from RC_0_16
2013-07-28 15:06:28 +00:00
Arvid Norberg
3c7503beaa
remove unused member of alert_manager
2013-07-19 23:31:44 +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
9c9135bfc4
don't use pointers to resume_data and file_priorities in add_torrent_params
2013-07-17 20:21:48 +00:00
Arvid Norberg
8e43a80fe9
one more getpid() fix for windows
2013-06-18 08:48:19 +00:00
Arvid Norberg
dcfd69fbe3
fix request-logging build on windows
2013-06-18 03:18:47 +00:00
Arvid Norberg
a75a0581e3
improve error message for listen_failed_alert
2013-06-04 00:35:42 +00:00
Arvid Norberg
93993002ab
merged unchoke algorithm fix from RC_0_16
2013-06-01 22:33:11 +00:00
Arvid Norberg
df4fcaaeed
remove disable-dht build configuration from the public API (simplify linking)
2013-04-09 01:04:43 +00:00
Arvid Norberg
01f60fa20c
fix disk setting sync.
2013-03-21 01:45:12 +00:00
Arvid Norberg
59a95c8ed6
fix build
2013-03-17 22:16:57 +00:00
Arvid Norberg
8d8d160b35
a bit more robust error messaging when deleting files in a torrent
2013-03-17 00:50:33 +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
5cf8aa57f4
anonymous mode should default to false. minor fixes
2013-02-19 08:14:16 +00:00
Arvid Norberg
86a2569728
separate anonymous mode and force-proxy mode, and tighten it up a bit
2013-02-19 06:48:53 +00:00
Arvid Norberg
907eca9ac3
merged documentation fix from RC_0_16
2013-02-17 22:56:39 +00:00
Arvid Norberg
0951219ab6
simplify the accounting of active_download and active_finished torrents
2013-02-09 05:56:31 +00:00
Arvid Norberg
0e6e943318
comment and invariant check
2013-02-07 06:41:11 +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
652bf8323b
prioritize some more todo mark-ups
2013-01-21 01:40:59 +00:00
Arvid Norberg
f1b8582a95
add gen_todo.py script. include todo.html and mark up some todos in the code with priority
2013-01-20 23:21:53 +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
5afa8c88b9
fix issues introduced with connection ordering
2013-01-02 07:48:09 +00:00
Arvid Norberg
970ddba29b
refactor find_disconnect_candidate_torrent to match libtorrent_aio
2013-01-02 07:39:02 +00:00
Arvid Norberg
c37420f82d
fixed some typos
2013-01-01 23:43:52 +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
d7bef3dbf9
merged fix from RC_0_16
2012-12-31 03:12:11 +00:00
Arvid Norberg
40805503d6
merged python binding fix from RC_0_16
2012-12-14 04:38:44 +00:00
Arvid Norberg
d2f72f50cc
merged IPV6_V6ONLY fix from RC_0_16
2012-11-19 04:58:46 +00:00
Arvid Norberg
52b205e6cb
merged fix from RC_0_16
2012-11-11 05:07:19 +00:00
Arvid Norberg
85cda6cf53
fixed logging build
2012-11-09 17:11:42 +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
8ba970018c
make bottled http requests response size limit configurable and bump default to 2 MiB
2012-10-19 01:28:47 +00:00
Arvid Norberg
01f70bfd84
add session logging function
2012-10-18 15:14:18 +00:00
Arvid Norberg
158f59cb22
merged fix from RC_0_16
2012-10-18 07:42:15 +00:00
Arvid Norberg
ed4dfbc8fb
use session_log function rather than iostream for session logging
2012-10-18 07:32:16 +00:00
Arvid Norberg
e4f15a2223
merged uTP fix from RC_0_16
2012-10-15 06:20:42 +00:00
Arvid Norberg
b3ad105145
merged ssl fix from RC_0_16
2012-10-10 05:52:08 +00:00
Arvid Norberg
971aea19e7
merged local service discovery logging from RC_0_16
2012-10-09 04:16:37 +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
e44225cb57
merged uTP fix from RC_0_16
2012-10-05 03:20:40 +00:00
Arvid Norberg
bff648a89e
update copyright dates and add tool to do so
2012-10-02 03:16:33 +00:00
Arvid Norberg
37ec1af926
add TODO comment
2012-09-30 15:38:37 +00:00
Arvid Norberg
4ea4d32554
merge active_tracker_limit increase and logging polish from RC_0_16
2012-09-27 23:50:15 +00:00
Arvid Norberg
19e4cbec46
merged udp socket fix
2012-09-27 17:39:41 +00:00
Arvid Norberg
0a90844407
merged logging improvement from RC_0_16
2012-09-25 02:49:40 +00:00
Arvid Norberg
d098e49059
merged DHT feature from libtorrent_aio
2012-09-22 21:40:16 +00:00
Arvid Norberg
33233963eb
merged fix from RC_0_16
2012-08-29 01:58:06 +00:00
Arvid Norberg
0685fb91bd
DHT throttling fix
2012-08-03 05:13:40 +00:00
Arvid Norberg
ee3b006c85
fix build with i2p disabled
2012-07-31 16:53:37 +00:00
Arvid Norberg
0657690b1c
attempt at fixing shutdown hang caused by connection_queue
2012-07-15 23:22:23 +00:00
Arvid Norberg
db33922684
merged shutdown delay fix from libtorrent_aio
2012-07-15 02:30:13 +00:00
Arvid Norberg
7c7b927e07
improve connection distribution fairness between torrents
2012-07-04 20:41:22 +00:00
Arvid Norberg
4860805c81
fix logging build
2012-06-30 15:05:31 +00:00
Arvid Norberg
4a2c799a1a
always use SO_REUSEADDR and deprecate the flag to turn it on
2012-06-28 06:51:18 +00:00
Arvid Norberg
a4091ff1a1
add comment
2012-06-26 03:34:42 +00:00
Arvid Norberg
4ddbe44a0d
fix bug in the udp socket observer use for DHT and add debug facilily for the observers
2012-06-25 03:31:11 +00:00
Arvid Norberg
b728037ec3
deprecate delayed_ack setting
2012-06-23 06:04:46 +00:00
Arvid Norberg
7351f68b98
fix build with verbose logging and missing INT64_MAX on msvc
2012-06-23 05:46:51 +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
918dce1341
back-ported part of the alert_dispatcher patch for the DHT
2012-04-30 05:39:35 +00:00
Arvid Norberg
ccb1a880aa
fixed unchoke logic when using web seeds
2012-04-12 00:02:35 +00:00
Arvid Norberg
f714732eee
merged fix from RC_0_16 to support older openssl
2012-04-06 04:11:04 +00:00
Arvid Norberg
9024209d51
merged set_settings race condition fix into trunk
2012-04-06 03:02:50 +00:00
Arvid Norberg
46683f59f8
fix division by zero
2012-04-02 05:30:15 +00:00
Arvid Norberg
b29b2314b2
improved shutdown delay debugging
2012-04-01 00:42:31 +00:00
Arvid Norberg
418c1e8190
make tracker back-off configurable
2012-03-29 03:51:22 +00:00
Arvid Norberg
6fcc469aef
support banning web seeds that send corrupt data
2012-03-24 01:29:31 +00:00
Arvid Norberg
8a4685e83b
fixed some typos
2012-03-17 17:48:22 +00:00
Arvid Norberg
d8b221c795
improve session stats logging and parsing
2012-03-11 05:35:29 +00:00
Arvid Norberg
671694959f
log peers that have a full send buffer
2012-03-09 17:03:10 +00:00
Arvid Norberg
b58a96d76b
log stats of incoming piece requests
2012-03-09 06:24:01 +00:00
Arvid Norberg
9288f08826
fix stats logging precision
2012-03-09 01:22:45 +00:00
Arvid Norberg
341967dab7
improve magnet link support. in RSS feeds for instance. Parsing of magnet links was factored out and moved to the proper place, in session_impl::add_torrent
2012-03-08 09:54:44 +00:00
Arvid Norberg
9bd40e950b
add send_buffer_low_watermark in an attempt to improve seed ramp-up time
2012-03-07 02:59:50 +00:00
Arvid Norberg
02b0e0ead3
add some more stats logging
2012-03-06 10:34:18 +00:00
Arvid Norberg
5897235f51
fix recent simplification of connection attempt distribution
2012-03-06 07:34:02 +00:00
Arvid Norberg
ea59a9be22
simplify connection attempt distribution logic to not lower the connection rate with a downloading torrent among seeding ones
2012-03-05 10:42:25 +00:00
Arvid Norberg
8f3c3de1e2
add incoming requests to stats logging
2012-03-05 10:05:20 +00:00
Arvid Norberg
e2d46b5563
add performance warning when hitting the file descriptor limit. Log the total number of peers, including half-open TCP connections
2012-03-04 11:18:27 +00:00
Arvid Norberg
769c985e78
report ENOFILE to peer connection disconnect function when running out of file descriptors
2012-03-04 10:54:55 +00:00
Arvid Norberg
ccf9c5a0fd
log more stats
2012-03-02 08:52:54 +00:00
Arvid Norberg
fdc6d3722b
fix boost version condition for new asio ssl features
2012-02-26 00:01:53 +00:00
Arvid Norberg
886364118c
tweak connection points in deficit round-robin of outgoing connection attempts balancing between torrents
2012-02-25 10:57:36 +00:00
Arvid Norberg
b5bf19c07b
fix openssl build with boost-1.46
2012-02-25 08:31:25 +00:00
Arvid Norberg
3ef9190b01
fix export for settings_map symbol for python binding
2012-02-25 08:02:52 +00:00
Arvid Norberg
f221b3d931
export session_settings_map and fix rss issue in client_test
2012-02-24 16:11:31 +00:00
Arvid Norberg
28e74a79b7
RSS fixes (exponential back-off), handling feed errors with retries
2012-02-22 08:26:42 +00:00
Arvid Norberg
d24a2e30fc
rss feed fixes
2012-02-20 23:44:34 +00:00
Arvid Norberg
75fce84ce4
added unit test for RSS feeds and fixed a parsing bug
2012-02-20 07:51:36 +00:00
Arvid Norberg
079a8f8314
ignore failures when asking for local address of sockets and parsing a string into an IP address
2012-02-20 04:13:39 +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
639039a94e
attempt to fix TOS setting (IP type of service)
2012-01-29 20:59:20 +00:00
Arvid Norberg
1a32205944
graceful shutdown of uTP sockets
2012-01-23 05:02:12 +00:00
Arvid Norberg
ed56520d24
more asserts around state updates
2012-01-20 05:40:32 +00:00
Arvid Norberg
88012b6a1c
log uTP states to stats log
2012-01-17 03:11:16 +00:00
Arvid Norberg
ae90a8f85e
verify that torrent names matches the DNS name in its certificate (RFC 2818-style). Fix issues that was breaking SSL support and tidy up a bit
2012-01-15 23:34:43 +00:00
Arvid Norberg
4a40e68a82
landed ssl branch back into trunk
2012-01-14 16:04:25 +00:00
Arvid Norberg
23c477142e
merged integer overflow fix from aio branch
2012-01-05 21:11:55 +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
91b5fde1e2
don't recalculate auto managed files when session is paused
2011-12-24 20:15:22 +00:00
Arvid Norberg
c2b8e869f1
one more recalculate_auto_manage postponing fix
2011-12-23 20:02:59 +00:00
Arvid Norberg
231fc30e13
postpone recalculate auto-managed torrents when changing many torrents state
2011-12-23 17:16:14 +00:00
Arvid Norberg
2877903e75
replaced std::map with boost::unordered_map for torrent list, to scale better with many torrents
2011-12-21 21:21:19 +00:00
Arvid Norberg
7f3aac3959
fix issue with unchoke_slots_limit not preserving its value correctly
2011-12-19 05:53:11 +00:00
Arvid Norberg
ef724014aa
deprecated per-peer rate limits (and removed them from libtorrent_aio)
2011-12-18 12:52:09 +00:00
Arvid Norberg
47e81ff90b
fixed uninitialized counter for stats logging
2011-11-28 01:27:55 +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
9250b551d9
fix stats build
2011-11-21 06:21:06 +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
c4232065d8
introduced a more scalable API for torrent status updates (post_torrent_updates())
2011-11-15 02:34:00 +00:00
Arvid Norberg
5576a98d04
log session_stats to /var/log/ on unixes
2011-11-13 08:12:11 +00:00
Arvid Norberg
2330520c51
change the add_torrent_params API to use flags instead of a bunch of bools (but leave it backwards compatible)
2011-11-08 05:36:22 +00:00
Arvid Norberg
b85727c633
another channel state fix
2011-10-28 23:08:52 +00:00
Arvid Norberg
0a2b352795
possible dangling pointer fix in broadcast_socket
2011-10-25 05:55:32 +00:00
Arvid Norberg
15f20c887d
fix msvc build
2011-10-22 17:44:40 +00:00
Arvid Norberg
95e462e750
windows version of CPU time measurement
2011-10-18 00:42:05 +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
744a3be65d
also use separate lower limits for up and download rates in the TCP/uTP mixed mode algorithm
2011-10-11 05:05:09 +00:00
Arvid Norberg
8aed4eaa7f
improve TCP/uTP mixed mode algorithm by only taking peers into account that have outstanding requests (and want to send or expect to receive). Also throttle upload and download independently
2011-10-11 05:00:35 +00:00
Arvid Norberg
2741563711
set alert_mask early
2011-10-08 09:52:36 +00:00
Arvid Norberg
d535e6b1ee
fix setting of disk_io_write_mode and disk_io_read_mode in set_settings
2011-09-28 18:14:48 +00:00
Arvid Norberg
d54c85d31b
log uTP receive delay in stats log
2011-09-28 00:03:12 +00:00
Arvid Norberg
85db40e2c5
log outstanding reading bytes from peers in stats log
2011-09-23 20:57:42 +00:00
Arvid Norberg
bf4ba45bf3
remove invalid assert in session_impl::listen_on
2011-09-22 21:30:46 +00:00
Arvid Norberg
7a50255865
improved struct layout debug logging and optimized some structs
2011-09-21 09:27:07 +00:00
Arvid Norberg
f5b5160169
add incoming_connection_alert for logging all successful incoming connections
2011-09-17 01:44:05 +00:00
Arvid Norberg
6271ee58f6
fix overflow issue in default disk write queue size limit
2011-09-14 06:22:45 +00:00
Arvid Norberg
469414d486
initial BitTorrent over SSL support
2011-09-12 03:51:49 +00:00
Arvid Norberg
90372b6caf
fixed bug in auto manager which would never enable local peer discovery for torrents
2011-09-11 03:39:24 +00:00
Arvid Norberg
e7185b519b
fix some release asserts
2011-08-27 09:47:36 +00:00
Arvid Norberg
6dd9a7d83a
don't post 'operation aborted' UDP errors when changing listen port
2011-08-21 01:55:38 +00:00
Arvid Norberg
3e505f01fc
fix issue where torrents could 'get stuck' queued for checking (if they were paused)
2011-08-06 17:54:33 +00:00
Arvid Norberg
855e5a1acb
fixed typo in settings map
2011-08-01 04:10:01 +00:00
Arvid Norberg
0d959ed697
fix disk thread settings update bug when changing session_settings::lock_files
2011-07-10 01:36:18 +00:00
Arvid Norberg
da0560f129
fixed typo in previous check-in
2011-07-03 20:39:24 +00:00
Arvid Norberg
0068f48646
vm stats logging for linux
2011-07-03 20:07:20 +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
209b9e4186
make disk timing be average over the last second. fixed some other bugs in previous changes
2011-06-26 19:45:33 +00:00
Arvid Norberg
c647e95244
adjust default read cache line size and log IOPS in session stats
2011-06-26 19:00:40 +00:00
Arvid Norberg
2e70f92003
back ported simplification of stats logging code from aio branch
2011-06-26 18:43:23 +00:00
Arvid Norberg
c390dd5858
measure uTP send delay and log it in stats log. change unit on times to seconds (from milliseconds and microseconds)
2011-06-21 07:44:13 +00:00
Arvid Norberg
ae3fc48b80
add some session settings to the settings map
2011-06-21 04:39:04 +00:00
Arvid Norberg
de799e1100
fix issue in session_impl::remove_torrent which would cause it to throw
2011-06-21 02:02:58 +00:00
Arvid Norberg
39a68729a5
add instrumentation for mixed mode
2011-06-20 04:33:46 +00:00
Arvid Norberg
ec30fe5f9b
fix build issue with statistics enabled
2011-06-16 00:28:36 +00:00
Arvid Norberg
78c6bd3b08
fix signature for set_alert_mask
2011-06-13 16:46:46 +00:00
Arvid Norberg
a5c3554a87
log number of peers in end-game mode
2011-06-13 16:20:21 +00:00
Arvid Norberg
67ad61fd0a
fix invalid assert for resume data being loaded
2011-06-09 05:46:47 +00:00
Arvid Norberg
b8614a36b3
fix resume state for paused when torrent was in graceful pause mode
2011-06-05 20:48:00 +00:00
Arvid Norberg
68dee0342b
minor fix
2011-06-05 06:32:00 +00:00
Arvid Norberg
df003ef57c
fix checking behavior when pausing/resuming the session
2011-06-05 03:06:34 +00:00
Arvid Norberg
ebba1f3c57
fix assert when pausing session while checking torrents
2011-06-03 08:40:13 +00:00
Arvid Norberg
05e91f1a6d
fix uninitialized sequence number for session stats logs
2011-06-01 07:06:20 +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
6e23b9f5a6
allow torrents to keep running when they encounter an error (such as disk full) but still report the error in the torrent's error string
2011-05-16 07:47:21 +00:00
Arvid Norberg
e946ba654f
release assert fixes
2011-05-08 23:52:06 +00:00
Arvid Norberg
a73960aa5a
support release asserts
2011-05-08 09:04:59 +00:00
Arvid Norberg
eaea22be71
make torrent priority stricly prefer unchoking peers on high priority torrents
2011-04-30 20:33:35 +00:00
Arvid Norberg
58ea6f5b3c
don't start the next checking torrent when the session is paused
2011-04-28 07:54:57 +00:00
Arvid Norberg
2eff66c9b0
removed invalid assert
2011-04-26 16:22:21 +00:00
Arvid Norberg
83fe560aa2
fixed uninitialized stats logger
2011-04-26 07:05:26 +00:00
Arvid Norberg
35d8f7bc19
fix assert when checking multiple torrents and pausing session
2011-04-10 22:05:28 +00:00
Arvid Norberg
78ef442997
clear log file pointer
2011-04-06 07:58:29 +00:00
Arvid Norberg
35038bc3eb
fix rotating logs when enabling and disabling stats logging at run-time
2011-04-06 07:33:10 +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
572f176f99
fix assert when removing a torrent
2011-04-02 20:05:44 +00:00
Arvid Norberg
d4a9a9ae77
fixed issue in session_impl::on_disk
2011-04-01 08:08:41 +00:00
Arvid Norberg
113fa0ba3d
fixed some shadowed variable warnings
2011-03-30 16:03:35 +00:00
Arvid Norberg
fdd23fc629
introduce a lower pass download/upload rate and report in session log
2011-03-27 20:58:43 +00:00
Arvid Norberg
f6a42863e3
try to optimize disk write performance by raising the low watermark (for disk thread queue) to start reading from sockets and also post the start-reading event earlier. Also implement fair round-robin of which peers get to start downloading on this event
2011-03-27 20:35:38 +00:00
Arvid Norberg
346a6fb175
another read job starvation fix + some more logging
2011-03-27 08:21:26 +00:00
Arvid Norberg
3d826ae32f
figured out the weirdness in the session rate stats
2011-03-25 07:49:32 +00:00
Arvid Norberg
1ab853db40
properly back off when accept() returns EMFILE
2011-03-23 08:49:26 +00:00