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 |
Arvid Norberg
|
e9459b4df8
|
rss fixes
|
2011-03-23 02:46:22 +00:00 |
Arvid Norberg
|
d3f0875ed5
|
fixed division by zero
|
2011-03-21 08:19:00 +00:00 |
Arvid Norberg
|
54dd2a06f5
|
add rss support to client_test
|
2011-03-21 04:59:45 +00:00 |
Arvid Norberg
|
2dfd1a972b
|
prevent read jobs from starving in the disk I/O thread
|
2011-03-20 19:17:59 +00:00 |
Arvid Norberg
|
3d63cb98b7
|
log read job queue size
|
2011-03-20 09:04:03 +00:00 |
Arvid Norberg
|
54435a73b8
|
optimization for kick-starting sockets to download again after having been blocked by the disk
|
2011-03-20 07:43:57 +00:00 |
Arvid Norberg
|
e4df633157
|
added another disk cache flush algorithm to minimize readback when hashing pieces
|
2011-03-20 05:47:27 +00:00 |
Arvid Norberg
|
11e5e2539a
|
fixed crash when setting cache_buffer_chunk_size to 0
|
2011-03-20 04:56:20 +00:00 |
Arvid Norberg
|
1b6227ad31
|
report disk read-back when verifying piece hashes
|
2011-03-20 01:19:14 +00:00 |
Arvid Norberg
|
c015e28792
|
more disk thread timing
|
2011-03-19 22:23:58 +00:00 |
Arvid Norberg
|
a6745558e7
|
log max queue size and low watermark
|
2011-03-18 05:49:31 +00:00 |
Arvid Norberg
|
782bc974a1
|
log average disk job time instead of cache time
|
2011-03-18 03:07:10 +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
|
d6fbff13df
|
measure disk sort time (phys_offset)
|
2011-03-15 02:21:28 +00:00 |
Arvid Norberg
|
7dde47b98a
|
measure disk cache flush times
|
2011-03-15 01:44:32 +00:00 |
Arvid Norberg
|
9812626cf0
|
make DHT rate limit configurable
|
2011-03-14 07:47:24 +00:00 |
Arvid Norberg
|
bf842f8120
|
fixed typo
|
2011-03-14 05:46:20 +00:00 |
Arvid Norberg
|
a08bcf7459
|
change semantics of disk read time and add disk hash time
|
2011-03-14 05:21:46 +00:00 |
Arvid Norberg
|
ff7bbc6cd0
|
log disk cache in session stats
|
2011-03-14 03:35:18 +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
|
7eeafd2bac
|
log number of torrents with errors in stats logger
|
2011-03-13 19:06:19 +00:00 |
Arvid Norberg
|
c21100a9a5
|
log failed and redundant bytes
|
2011-03-13 04:34:57 +00:00 |
Arvid Norberg
|
ca4a053d1a
|
add written disk blocks to session stats
|
2011-03-12 21:41:05 +00:00 |
Arvid Norberg
|
03a7442532
|
add disk cache stats to session stats
|
2011-03-11 07:37:12 +00:00 |
Arvid Norberg
|
5431d86779
|
no need to close and re-open the listen socket when starting the DHT. Report the actual port we ended up listening on if the system chose one. don't try to listen on i2p
|
2011-03-07 07:02:30 +00:00 |
Arvid Norberg
|
5ea62910ba
|
fixed inverse logic for ip filter exemption
|
2011-03-07 01:20:23 +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
|
a0b6085530
|
re-evaluate auto managed torrents soon after adding a new auto-managed torrent
|
2011-03-04 06:03:45 +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
|
ab3b82b8ee
|
replaced std::rand() with custom random generator
|
2011-02-26 07:55:51 +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
|
ca106ca4e0
|
some warning fixes and cleanup
|
2011-02-24 04:25:35 +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
|
9fe69e7596
|
fix another issue with adding magnet links with a valid torrent_info object
|
2011-02-21 03:07:37 +00:00 |
Arvid Norberg
|
3a89bcf6ff
|
don't assert on passing in a null pointer for listen interface, just listen on INADDR_ANY
|
2011-02-19 21:16:32 +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
|
9aa09d384c
|
added smooth_connect and turned it on by default
|
2011-02-16 03:11:55 +00:00 |
Arvid Norberg
|
c4c1773ceb
|
fixed some warnings
|
2011-02-15 10:05:25 +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
|
21d6030fe3
|
logging build fix
|
2011-02-12 23:25:09 +00:00 |
Arvid Norberg
|
6780114937
|
log number of upload-only torrents in session stats
|
2011-02-12 22:15:03 +00:00 |
Arvid Norberg
|
4267f0ec5a
|
rotate stats log every hour
|
2011-02-11 17:39:22 +00:00 |
Arvid Norberg
|
a42d42fd11
|
CPU optimization for end-game piece picker
|
2011-02-09 02:56:00 +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
|
63c96274b9
|
more stats for redundant/failed and protocol bandwidth usage
|
2011-02-06 07:33:40 +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
|
06d8142c5b
|
checking torrents don't count in auto manage logic
|
2011-02-04 06:55:05 +00:00 |
Arvid Norberg
|
051936cd29
|
fixed typo
|
2011-02-04 06:44:05 +00:00 |
Arvid Norberg
|
19d6c53ad4
|
increase low watermark for disk write queue. log payload rates in session stats
|
2011-02-04 06:33:47 +00:00 |
Arvid Norberg
|
88663bfbde
|
log more peer errors in stats log
|
2011-02-04 04:31:20 +00:00 |
Arvid Norberg
|
907588db12
|
fixed bug in peer upload stats logging and adjusted bucket sizes for histogram
|
2011-02-04 03:24:55 +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
|
19ae5440f2
|
make auto-manager kick in immediately when torrents are added and paused (reduces a 10 seconds delay)
|
2011-01-30 13:15:29 +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
|
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
|
9964b9cdb6
|
support a separate option to use proxies for peers or not
|
2011-01-24 03:24:28 +00:00 |
Arvid Norberg
|
4602ff4b47
|
removed logging in destructor since it caused a race condition with the creation of the logger
|
2011-01-24 03:23:34 +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
|
c223291fb4
|
added support for RSS feeds
|
2011-01-18 03:41:54 +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
|
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
|
d1124574ef
|
fix test_transfer to set mixed mode to 'prefer_tcp' to avoid having it interfere with the send rate. optimize the test to run a lot faster. fix proxy to allow any protocol (fixes issue where test failed with http and https proxy). Bump the minimum rate limit to 20kB/s (from 5kB/s) in proportional mixed mode algorithm
|
2010-12-27 22:54:14 +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
|
8c3ad6b4f3
|
asio debugging fixes and test_transfer fixes
|
2010-12-24 18:15:01 +00:00 |
Arvid Norberg
|
451c583023
|
more robust mechanism to determine external IP
|
2010-12-24 01:31:41 +00:00 |
Arvid Norberg
|
c4422cd34e
|
optimize test_transfer. fix set_upload_mode() bug for seeds. clean up some verbose logging. fix tests to not fail by EAGAIN on stdout
|
2010-12-24 00:37:01 +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
|
0b213d95d2
|
add missing settings mappings
|
2010-12-17 03:16:30 +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
|
5ee6266e93
|
more DHT fixes
|
2010-12-12 09:15:54 +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
|
779014ddac
|
support requesting UPnP and NAT-PMP routers for our external IP address
|
2010-12-05 20:40:28 +00:00 |
Arvid Norberg
|
03bd547f40
|
potential memory corruption fix when connections close when the disk becomes available
|
2010-12-04 23:24:42 +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
|
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
|
2e871382d7
|
add debug configuration to debug shutdown-stall bugs / outstanding async operations
|
2010-11-28 01:47:30 +00:00 |
Arvid Norberg
|
d1cb2d52ff
|
fixed build issues with with vernose logging enabled
|
2010-11-26 20:44:48 +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
|
79f6b5856b
|
verbose logging fixes
|
2010-11-15 04:43:53 +00:00 |
Arvid Norberg
|
02e15202f2
|
support dht nodes in magnet links
|
2010-11-07 19:18:16 +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
|
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
|
2e05dc765a
|
make the listen argument configurable
|
2010-10-29 08:10:12 +00:00 |
Arvid Norberg
|
07f1b74291
|
fixed logging build
|
2010-10-24 08:06:58 +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
|
517aaf526b
|
fixed assert when shutting down with DHT enabled
|
2010-10-19 03:43:11 +00:00 |
Arvid Norberg
|
643a49f022
|
optimized session/torrent startup time (shaved off about 2 seconds)
|
2010-10-17 18:36:37 +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
|
7bd25edc9d
|
generalize SSL support to also include web seeds (and in theory regular peers)
|
2010-10-12 08:57:43 +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
|
440abdfaf2
|
optimistic unchoke fix
|
2010-10-04 04:06:14 +00:00 |
Arvid Norberg
|
8e4addf2c5
|
improved set_max_connections to immediately disconnect peers to match the new limit
|
2010-10-03 10:07:38 +00:00 |
Arvid Norberg
|
cd08a61f35
|
expose the full peer list size through session_status
|
2010-10-01 04:07: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
|
c341f15f71
|
make the assert macro also be able to print a value
|
2010-09-25 17:46:13 +00:00 |
Arvid Norberg
|
e2ca3e1545
|
rate limiter fix
|
2010-08-27 14:52:42 +00:00 |
Arvid Norberg
|
b44f71e217
|
post alerts for socks failures. fix unit tests
|
2010-08-25 06:22:49 +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
|
a85f1f5c61
|
improved logging
|
2010-08-18 17:14:40 +00:00 |
Arvid Norberg
|
fd5f1bf80b
|
improved SOCKS5 support
|
2010-08-03 09:08:37 +00:00 |
Arvid Norberg
|
67110ec0a3
|
vs2010 build fixes
|
2010-07-22 16:49:40 +00:00 |
Arvid Norberg
|
4c6be42b74
|
added feature to not count downloaded bytes from web seeds in stats
|
2010-07-15 06:27:44 +00:00 |
Arvid Norberg
|
89ca5a157a
|
fixed typos
|
2010-07-15 06:02:58 +00:00 |
Arvid Norberg
|
b3f57ac293
|
added incoming lsd alert
|
2010-07-15 05:56:29 +00:00 |
Arvid Norberg
|
c4fac3b91a
|
fixed incorrect assert
|
2010-07-15 01:46:50 +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
|
339b0019a4
|
fixed typo
|
2010-06-26 17:58:04 +00:00 |
Arvid Norberg
|
19c9237ffc
|
fixed crash in on_disk_queue and in on_receive_udp
|
2010-06-26 17:09:37 +00:00 |
Arvid Norberg
|
d3970f62a3
|
fixed invalid assert in session_impl::recalculate_unchoke_slots()
|
2010-06-25 14:14:36 +00:00 |
Arvid Norberg
|
717c7ba962
|
fixed bug where ignore resume timestamps would not update the disk io thread
|
2010-06-25 14:06:28 +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
|
6a5806bfd2
|
re-fixed the open_listen_port() issue
|
2010-06-01 02:04:00 +00:00 |
Arvid Norberg
|
cdf05a9c9c
|
moved UDP trackers over to use a single socket
|
2010-05-30 01:33:03 +00:00 |
Arvid Norberg
|
2f099e6103
|
fix open_listen_port call order
|
2010-05-27 16:20:08 +00:00 |
Arvid Norberg
|
126778d403
|
fix race condition caused by sharing udp socket and opening it in the session thread. Moved initialization to session constructor
|
2010-05-09 06:03:52 +00:00 |
Arvid Norberg
|
d0f2b0ade0
|
make tick interval configurable
|
2010-05-03 08:54:03 +00:00 |
Arvid Norberg
|
dce2edb6cc
|
fixed vs 2010 build
|
2010-04-30 19:08:16 +00:00 |
Arvid Norberg
|
2a55fe8c70
|
debug logging fixes
|
2010-04-14 18:52:13 +00:00 |
Arvid Norberg
|
2e14cfca46
|
fix crash
|
2010-04-13 05:59:59 +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
|
62eef91338
|
added setting to ignore file modification time when loading resume files
|
2010-04-11 21:02:43 +00:00 |
Arvid Norberg
|
a0a8c695ab
|
fixed typo
|
2010-03-31 04:22:48 +00:00 |
Arvid Norberg
|
310dd7d6f3
|
properly detect windows version to initialize half-open connection limit
|
2010-03-31 02:50:09 +00:00 |
Arvid Norberg
|
4c4c7f832a
|
fix for torrent announcing bug introduced when supporting fine grained control over sources torrents are announced to
|
2010-03-31 02:40:00 +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
|
c6f57ce5d7
|
support optional LSD IP broadcast
|
2010-03-26 17:45:16 +00:00 |
Arvid Norberg
|
b874104fab
|
precaution fix
|
2010-03-17 19:01:08 +00:00 |
Arvid Norberg
|
7775457441
|
moved GeoIP destruction inside session lock
|
2010-03-16 07:00:23 +00:00 |
Arvid Norberg
|
edea865023
|
fix unloading of GeoIP database to not cause potential crashes while shutting down
|
2010-03-16 02:50:20 +00:00 |
Arvid Norberg
|
fc224f29e4
|
fixed bug in session::save_state
|
2010-03-13 17:37:47 +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
|
cbc93c8de8
|
made load_state and save_state more data-driven to reduce code repetition
|
2010-03-10 02:28:40 +00:00 |
Arvid Norberg
|
06cca08afd
|
retry if accept fails because of too many files
|
2010-03-09 17:50:10 +00:00 |
Arvid Norberg
|
b80664bbaa
|
save additional settings in session state
|
2010-03-08 03:51:07 +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
|
e0e253a2a4
|
fixed geoip build
|
2010-03-04 22:34:49 +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
|
fb06acc828
|
add default peer rate limit setting
|
2010-03-03 01:31:31 +00:00 |
Arvid Norberg
|
82b60b25c8
|
made the DHT socket bind to the same interface as the session
|
2010-03-02 07:21:32 +00:00 |
Arvid Norberg
|
3171e81238
|
include new session settings in saved state
|
2010-02-21 01:34:23 +00:00 |
Arvid Norberg
|
23881fb0ff
|
lsd and dht announce timer fixes
|
2010-02-14 17:24:53 +00:00 |
Arvid Norberg
|
5c02f3df59
|
fixed DHT bootstrapping issue
|
2010-02-14 07:46:57 +00:00 |
Arvid Norberg
|
fe5f908cc6
|
fixed MinGW support
|
2010-02-14 04:05:18 +00:00 |
Arvid Norberg
|
c050b22d8f
|
optimized memory usage for torrent objects
|
2010-02-14 01:39:55 +00:00 |
Arvid Norberg
|
78363cc05d
|
local service discovery fixes
|
2010-02-13 16:29:17 +00:00 |
Arvid Norberg
|
3d5d9eb807
|
start torrent on incoming connection feature
|
2010-02-11 04:39:04 +00:00 |
Arvid Norberg
|
fb47469834
|
experimental support for the BitTyrant choking algorithm
|
2010-02-09 03:04:41 +00:00 |
Arvid Norberg
|
1a97405189
|
added an option to save a little bit of RAM by not collecting full detailed stats
|
2010-02-08 05:43:54 +00:00 |
Arvid Norberg
|
7e343a9d6f
|
add size logging to various classes
|
2010-02-08 04:51:34 +00:00 |
Arvid Norberg
|
0dba0f5dcc
|
never time out a peer because we're waiting for the disk. allow connection_speed = 0. post an alert when rejecting a peer because of the connection limit
|
2010-02-06 21:40:55 +00:00 |
Arvid Norberg
|
8c02d04d2e
|
UDP tracker optimization
|
2010-02-06 08:14:18 +00:00 |
Arvid Norberg
|
abfc92de35
|
added performance warning if there are too many optimistic unchoke slots
|
2010-02-06 07:39:45 +00:00 |
Arvid Norberg
|
51c544c6bb
|
fixed trunk build with DHT disabled
|
2010-02-05 08:40:08 +00:00 |
Arvid Norberg
|
088f4bf700
|
improved LSD performance and made the interval configurable
|
2010-02-05 08:23:17 +00:00 |
Arvid Norberg
|
1b2798970c
|
support O_NOATIME on linux and use it by default
|
2010-02-02 19:44:52 +00:00 |
Arvid Norberg
|
859f412189
|
support an arbitrary number of optimistic unchoke slots
|
2010-02-02 18:39:32 +00:00 |
Arvid Norberg
|
3bc40b9980
|
fix builds for all combinations of stats and disk stats
|
2010-01-31 20:32:12 +00:00 |
Arvid Norberg
|
8542343a0d
|
also exclude volatile option when using explicit cache
|
2010-01-31 19:16:22 +00:00 |
Arvid Norberg
|
dbffe3aee9
|
increase connection limit for local peers if limits are ignored for local network in order to accept more incoming connections from the local network
|
2010-01-31 18:35:46 +00:00 |
Arvid Norberg
|
6a5164b990
|
stop people from using volatile cache and suggest_pieces at the same time
|
2010-01-31 16:35:38 +00:00 |
Arvid Norberg
|
ccf8b0278a
|
added volatile read cache option
|
2010-01-30 03:50:17 +00:00 |
Arvid Norberg
|
5cc3cbd8b1
|
added some settings to the save session state
|
2010-01-24 22:00:36 +00:00 |
Arvid Norberg
|
a046850130
|
support disk I/O priority setting
|
2010-01-23 03:02:32 +00:00 |
Arvid Norberg
|
8c60c75547
|
explicit cache fixes
|
2010-01-17 21:57:24 +00:00 |
Arvid Norberg
|
d959331c1e
|
renamed some torrent check queue related functions to be more descriptive
|
2010-01-17 21:42:14 +00:00 |
Arvid Norberg
|
c9b594fde1
|
support sending suggest messages based on what's in the read cache. support 'explicit read cache'
|
2010-01-15 16:45:42 +00:00 |
Arvid Norberg
|
2d6cc667b5
|
removed one floating point operation
|
2009-12-29 19:06:27 +00:00 |
Arvid Norberg
|
d157af5305
|
build fixes
|
2009-12-28 20:59:34 +00:00 |
Arvid Norberg
|
2055426c52
|
fix trunk build and tests build without exceptions
|
2009-12-16 10:42:34 +00:00 |
Arvid Norberg
|
25798ba1fa
|
timer initialization fix
|
2009-12-13 16:32:07 +00:00 |
Arvid Norberg
|
1d04c4dcd0
|
added session saving and loading functions
|
2009-12-03 05:11:57 +00:00 |
Arvid Norberg
|
3fb05a13b1
|
fixed DLL link issues
|
2009-11-30 07:03:34 +00:00 |
Arvid Norberg
|
1f5859d31f
|
error_code fix. added is_error_code_enum template specialization and using the abbreviated syntax to build error_codes
|
2009-11-29 07:06:38 +00:00 |
Arvid Norberg
|
6070c59b46
|
fixed bug in auto-manager where active_downloads and active_seeds would sometimes be used incorrectly
|
2009-11-29 03:28:11 +00:00 |
Arvid Norberg
|
0f351cfd62
|
fixed num_queued counting
|
2009-11-28 22:47:45 +00:00 |
Arvid Norberg
|
39d14146e7
|
dynamic_cast fix
|
2009-11-27 21:04:26 +00:00 |
Arvid Norberg
|
47d2325145
|
fixed typo that would sometimes prevent queued torrents to be checked
|
2009-11-26 15:14:39 +00:00 |
Arvid Norberg
|
8dd244581d
|
header optimizations
|
2009-11-26 05:45:43 +00:00 |
Arvid Norberg
|
6343fe6a6d
|
optimized header dependencies to lower build time
|
2009-11-23 08:38:50 +00:00 |
Arvid Norberg
|
562e2512b9
|
some vs2010 fixes
|
2009-11-22 23:55:54 +00:00 |
Arvid Norberg
|
e9e32235b4
|
added support for libgcrypt
|
2009-11-08 03:09:19 +00:00 |
Arvid Norberg
|
51ef057498
|
more unicode and wstring fixes
|
2009-10-29 18:12:43 +00:00 |
Arvid Norberg
|
c418165e07
|
replaced boost.filesystem with custom functions (improves efficiency and drops unnecessary dependencies and improves libtorrent portability)
|
2009-10-26 01:29:39 +00:00 |
Arvid Norberg
|
6c137d6ef6
|
announces torrents immediately to the DHT when it's started
|
2009-10-25 02:37:45 +00:00 |
Arvid Norberg
|
8a5b7d5d36
|
got rid of the last recursive mutexes. abstracted the threading primitives (and switched over to use asio's internal ones).
|
2009-10-20 02:49:56 +00:00 |
Arvid Norberg
|
599543e889
|
automatically caps files and connections by default to rlimit
|
2009-10-03 19:02:31 +00:00 |
Arvid Norberg
|
e289b9c6ac
|
build fixes
|
2009-09-20 15:21:31 +00:00 |
Arvid Norberg
|
54cce9da60
|
simplified and optimized the DHT implementation
|
2009-09-20 00:23:36 +00:00 |
Arvid Norberg
|
6c67da08d6
|
split socket.hpp up in multiple headers to lower build time somewhat
|
2009-09-16 03:46:36 +00:00 |
Arvid Norberg
|
3e9725b5d7
|
made peer_blocked_alert derive from torrent_alert
|
2009-09-07 01:47:30 +00:00 |
Arvid Norberg
|
1f5a722b01
|
improved sun studio support (it seems to lack a lot of stl)
|
2009-08-30 07:38:52 +00:00 |
Arvid Norberg
|
f764227012
|
build fix for when DHT is disabled
|
2009-08-30 06:25:17 +00:00 |
Arvid Norberg
|
6078dd06b0
|
removed the last dependency on iostream and lexical cast
|
2009-08-25 18:13:46 +00:00 |
Arvid Norberg
|
45fd696bc6
|
added I2P support
|
2009-08-20 03:19:12 +00:00 |
Arvid Norberg
|
d37fab9927
|
socks5 listen socket fix
|
2009-08-18 18:47:44 +00:00 |
Arvid Norberg
|
1efdd4c628
|
gcc build fix
|
2009-08-08 17:56:23 +00:00 |
Arvid Norberg
|
63368c1383
|
added dummy storage class to disable disk I/O and an option to disable hash checking (for performance testing and simulation)
|
2009-08-02 06:40:45 +00:00 |
Arvid Norberg
|
eecc78b931
|
dll export fix + reverting upload slot change
|
2009-07-26 02:27:52 +00:00 |
Arvid Norberg
|
eb66830dc3
|
simplified auto scrape
|
2009-07-24 08:25:07 +00:00 |
Arvid Norberg
|
137d2d63f5
|
cleaned up policy. Moved logic from policy to torrent
|
2009-07-23 04:38:52 +00:00 |
Arvid Norberg
|
b437e2c743
|
fixed get_ip_filter
|
2009-07-21 04:42:19 +00:00 |
Andrew Resch
|
c401c65dfb
|
Add get_ip_filter() to session
|
2009-07-21 01:52:37 +00:00 |
Arvid Norberg
|
ae3be201c4
|
reduced the number of floating point operations to better support systems with no FPU
|
2009-07-19 04:59:27 +00:00 |
Arvid Norberg
|
c9a789d86f
|
made the upload slot setting be a minimum for the rate based auto unchoke algorithm
|
2009-07-18 22:55:07 +00:00 |
Arvid Norberg
|
db165942a7
|
oportunistic mingw fix
|
2009-06-30 23:03:54 +00:00 |
Arvid Norberg
|
499d4dfbb4
|
cleaned up left-over logging
|
2009-06-27 19:35:20 +00:00 |
Arvid Norberg
|
93e1c70263
|
allow 0 upload slots. added test for allow fast support for sending pieces to choked peers
|
2009-06-20 23:23:41 +00:00 |
Arvid Norberg
|
6b048dc85e
|
fixed bug in connect candidate counter
|
2009-06-18 16:16:41 +00:00 |
Arvid Norberg
|
8af5211fb5
|
fix deadlock when upnp or natpmp fails to start
|
2009-06-13 10:45:07 +00:00 |
Arvid Norberg
|
f20f63f865
|
fixed deadlock in some session member functions
|
2009-06-13 04:09:54 +00:00 |
Arvid Norberg
|
07bcb3545a
|
converted a whole lot of error strings into error_codes. Documented some previously undocumented alerts as well as all the error codes
|
2009-06-12 16:40:38 +00:00 |
Arvid Norberg
|
f0134c1b11
|
improved disk error handling and expanded use of error_code in error reporting
|
2009-06-10 08:30:55 +00:00 |
Arvid Norberg
|
a9a12a2391
|
fix build with boost-1.34.1
|
2009-06-03 07:22:43 +00:00 |
Arvid Norberg
|
745a16ec09
|
watchdog for stalled queued checking torrents
|
2009-05-30 02:38:34 +00:00 |
Andrew Resch
|
6242ae051e
|
added ability to give seeding torrents preference to active slots
|
2009-05-27 19:27:12 +00:00 |
Arvid Norberg
|
e744174f9a
|
removed dead code
|
2009-05-27 16:49:28 +00:00 |
Arvid Norberg
|
bb47b2924c
|
fix coalesce reads and writes setting
|
2009-05-25 07:46:31 +00:00 |
Arvid Norberg
|
30c704523c
|
caches the time every 100 ms and use the cache where high resolution timer is not needed
|
2009-05-25 02:45:51 +00:00 |
Daniel Wallin
|
68629eb6bc
|
Split peer list into IPv4 and IPv6 peers. Saves 12 bytes per IPv4 peer.
|
2009-05-24 21:49:19 +00:00 |
Arvid Norberg
|
a89d6cced1
|
clean up some disk cache duplication of logic and added another memory usage optimization for the write cache
|
2009-05-24 00:12:53 +00:00 |
Arvid Norberg
|
e3c07c0934
|
converted some recursive mutexes to regular ones
|
2009-05-23 21:36:09 +00:00 |
Arvid Norberg
|
ae8488fb91
|
improved read cache memory efficiency
|
2009-05-23 19:27:27 +00:00 |
Arvid Norberg
|
c1d9198dc3
|
added largest_contiguous cache flush algorithm
|
2009-05-23 07:35:45 +00:00 |
Arvid Norberg
|
0127edac14
|
added disk-checking delay, to leave room for other disk operations while checking a torrent
|
2009-05-22 06:32:39 +00:00 |
Arvid Norberg
|
ad157d49d2
|
fixed bug that prevented buffer optimization
|
2009-05-19 06:51:30 +00:00 |
Arvid Norberg
|
a51dfa50f5
|
renamed peer_from_tracker to add_peer
|
2009-05-15 22:07:19 +00:00 |
Arvid Norberg
|
1eda63c4f5
|
avoid using ' in peer ids, since there are buggy trackers that don't support it
|
2009-05-14 21:07:49 +00:00 |
Arvid Norberg
|
31c422df0a
|
added feature to set a separate global rate limit for local peers
|
2009-05-14 17:21:19 +00:00 |
Arvid Norberg
|
00ccf9064e
|
optimized memory usage in the DHT, and added some handling for out-of-memory cases
|
2009-05-13 22:18:41 +00:00 |
Arvid Norberg
|
c8066aabd8
|
fixed policy::peer cast bug (introduced when optimizing the peer allocation)
|
2009-05-13 16:14:20 +00:00 |
Arvid Norberg
|
136f101449
|
when reaching peer list size limit, rank peers to be removed. Fix for updating IP filter
|
2009-05-11 20:23:47 +00:00 |
Arvid Norberg
|
1eb2799a03
|
added more allocation logging for statistics builds. Identified and fixed some memory waste
|
2009-05-07 20:30:20 +00:00 |
Arvid Norberg
|
c8176cca55
|
optimized peer storage in resume data an in memory. Should use far less memory than previously for the peer list. Introduced peer source affinity, to avoid problem with a peer list that's diluted with stale peers
|
2009-05-06 22:36:24 +00:00 |
Arvid Norberg
|
6c03035aa0
|
added total number of peers logging to session statistics
|
2009-05-04 06:56:29 +00:00 |
Arvid Norberg
|
06b609aa1f
|
fixed unchoke bug. made the automatic unchoke strategy the default
|
2009-05-02 03:15:52 +00:00 |
Arvid Norberg
|
84dda7b617
|
support for adjusting the socket buffer sizes through session_settings
|
2009-05-01 04:59:15 +00:00 |
Arvid Norberg
|
3cf34e3a91
|
greatly optimised memory usage for peer list
|
2009-04-30 05:49:46 +00:00 |
Arvid Norberg
|
7109b86566
|
greatly simplified the rate limiter and generalized all rate limits (peer, torrent, global) to allow for arbitrary rate limit configurations
|
2009-04-26 00:21:59 +00:00 |
Arvid Norberg
|
6b69f1d8c4
|
fixed crash when shutting down while checking a torrent
|
2009-04-25 08:45:13 +00:00 |
Arvid Norberg
|
189d618261
|
improved IPv6 support (skips unsupported tests on windows)
|
2009-04-13 05:11:44 +00:00 |
Arvid Norberg
|
6a11d6ee4e
|
IPv6 tracker fix
|
2009-04-12 00:37:06 +00:00 |
Arvid Norberg
|
41be942ae7
|
experimental support for incoming connections over socks (untested)
|
2009-04-09 01:04:49 +00:00 |
Arvid Norberg
|
b5bb51c6af
|
cut out more IPv6 code if not supported
|
2009-04-04 16:59:53 +00:00 |
Arvid Norberg
|
aba5b2e9d0
|
dropped some iostream dependencies
|
2009-04-04 09:52:25 +00:00 |
Arvid Norberg
|
ac7e4fed7e
|
more missing wchar_t support
|
2009-04-04 08:32:23 +00:00 |
Arvid Norberg
|
db8487be46
|
auto unchoke improvement
|
2009-04-04 07:55:34 +00:00 |
Arvid Norberg
|
d7eb787c88
|
reset the io_service in case it exits prematurely
|
2009-03-31 07:57:57 +00:00 |
Arvid Norberg
|
1a6d2f86b9
|
add compile time option to disable IPv6 support
|
2009-03-31 07:45:54 +00:00 |
Arvid Norberg
|
db9236fcf8
|
don't try IPv6 on windows if it's not installed
|
2009-03-27 18:44:40 +00:00 |
Arvid Norberg
|
7aacfca292
|
made the examples build without exception support. added overloads of add_torrent() and add_magnet_uri() that don't throw
|
2009-02-26 07:09:56 +00:00 |
Arvid Norberg
|
b25a8db2a6
|
added more error codes. consolidated exception classes into one. moved over more places to use error_code instead of strings. fixed proper error handling for torrent_info
|
2009-02-23 01:21:19 +00:00 |
Arvid Norberg
|
63a2522014
|
fixed some warnings
|
2009-02-13 07:13:03 +00:00 |
Arvid Norberg
|
72531255bc
|
define boost::throw_exception when building with no exceptions
|
2009-02-11 17:45:12 +00:00 |
Arvid Norberg
|
5c12db28d2
|
added option to lock disk cache in physical memory
|
2009-02-06 09:46:13 +00:00 |
Arvid Norberg
|
532a5f477d
|
fixed checking files issue
|
2009-02-03 17:35:41 +00:00 |
Arvid Norberg
|
1ac8f806fa
|
added seed mode support (lazy hash checking)
|
2009-02-03 07:46:24 +00:00 |
Arvid Norberg
|
2623037482
|
local peers are excempt from unchoke slots. #469
|
2009-01-28 06:14:21 +00:00 |
Arvid Norberg
|
0ba2e2cdbd
|
fixed issue where torrents that failed checking would not resume checking when the error was cleared. One side effect of this fix is that it should now be possible to pause checking torrents with the 0.14 branch
|
2009-01-27 09:18:51 +00:00 |
Arvid Norberg
|
fd8a07ac15
|
fixed dht race condition (confirmed to work on windows too)
|
2009-01-24 18:29:33 +00:00 |
Arvid Norberg
|
76cea23b4c
|
cleanup of previous check-in. fixing boost-1.34 compatibility and syntax error
|
2009-01-23 17:06:23 +00:00 |
Arvid Norberg
|
9b5aa967b0
|
fixed race condition when saving DHT state
|
2009-01-23 16:40:00 +00:00 |
Arvid Norberg
|
b3a17b1787
|
added disk buffer instrumentation and log parser
|
2009-01-23 09:13:31 +00:00 |
Arvid Norberg
|
9a9f08f70f
|
enables teredo support on windows
|
2009-01-21 01:39:13 +00:00 |
Arvid Norberg
|
8aa43b682b
|
listen port cleanup
|
2009-01-19 08:31:31 +00:00 |
Arvid Norberg
|
cfd116ffad
|
made disk_io_settings be synchronized through the job queue
|
2009-01-10 05:46:02 +00:00 |
Arvid Norberg
|
c21edfa6f1
|
fixed bug preventing clients to change the disk cache expiration time
|
2009-01-09 18:18:46 +00:00 |
Arvid Norberg
|
dacb1ac48d
|
reverted async. call to torrent::start() since it creates an undesirable race condition for file operations
|
2009-01-02 08:58:51 +00:00 |
Arvid Norberg
|
06da1f8e8a
|
added some session logging. added more disk-io-thread stats logging and parse script
|
2008-12-30 08:20:25 +00:00 |
Arvid Norberg
|
927f9623cb
|
session stats improvements
|
2008-12-27 02:22:20 +00:00 |
Arvid Norberg
|
952ed687cd
|
made session stats config build
|
2008-12-26 07:00:21 +00:00 |
Arvid Norberg
|
c8988d79b9
|
fixed typo in earlier check-in and wrapped try-catch block in BOOST_NO_EXCEPTIONS
|
2008-12-25 23:51:16 +00:00 |
Arvid Norberg
|
5a201af5f5
|
don't send performance warnings for rate limits unless it's enabled. stats logging improvements
|
2008-12-25 22:26:02 +00:00 |
Arvid Norberg
|
9379e4414c
|
removed limit of active torrents to the unchoked slots. Fixes #450. Also removed some dead code and fixed typos in comments
|
2008-12-25 22:19:14 +00:00 |
Arvid Norberg
|
f6a9e44523
|
modified fix for #431 to make it actually build and work
|
2008-12-21 19:15:53 +00:00 |
Arvid Norberg
|
7b8663fa8b
|
support for wide character paths for the GeoIP databases. Fixes #431
|
2008-12-21 08:48:06 +00:00 |
Arvid Norberg
|
16bfde875d
|
tests don't need the default session features turned on
|
2008-12-20 23:06:06 +00:00 |
Arvid Norberg
|
f1d981254a
|
added session::set_alert_dispatch() for system specific message loop integration
|
2008-12-15 07:12:08 +00:00 |
Arvid Norberg
|
0638251289
|
added queued bytes to bandwidth manager and session_stats
|
2008-12-13 05:12:12 +00:00 |
Arvid Norberg
|
09b3a865ef
|
fixed compiler flags in pkg-config file and made header files not depend on the NDEBUG define
|
2008-11-29 21:33:21 +00:00 |
Arvid Norberg
|
723aba6c24
|
solved issue with pausing checking torrents. Introduced a new state, checkin_resume_data, which a torrent is in while waiting for the disk io thread to verify the resume data, but before it has been determined wheter it should be queued for checking or not
|
2008-11-19 00:46:48 +00:00 |
Arvid Norberg
|
78abf8a340
|
made recent change where the TCP/IP overhead is take into account when rate limiting, optional
|
2008-11-18 11:14:44 +00:00 |
Arvid Norberg
|
a48ffe36e0
|
improved natpmp logging and handling of mapped ports in session
|
2008-11-16 02:11:04 +00:00 |
Arvid Norberg
|
473f75e98a
|
DHT fix where the node_id would get set after it was started and be inconsitent with rpc_manager and routing_table
|
2008-11-11 08:33:34 +00:00 |
Arvid Norberg
|
4abd27b40e
|
initialize torrent object in libtorrent thread instead of in calling thread
|
2008-11-10 02:33:39 +00:00 |
Arvid Norberg
|
18d269dd62
|
DHT optimizations
|
2008-11-10 02:08:42 +00:00 |
Arvid Norberg
|
19c66a1826
|
exception fixes
|
2008-11-05 05:39:18 +00:00 |
Arvid Norberg
|
f2c9e02994
|
fixed deadlock in dht code
|
2008-11-02 10:01:04 +00:00 |
Arvid Norberg
|
d721e99026
|
fix windows build with verbose logging
|
2008-11-01 05:35:41 +00:00 |
Arvid Norberg
|
4dada930ac
|
made torrents not wanting more peers whene they're shutting down. Closes out all connections in the connection queue explicitly when session is shutting down
|
2008-10-30 17:13:10 +00:00 |
Arvid Norberg
|
7fd2fd4732
|
added performance warnings for when the IP overhead eats up the entire up- or download rate limit
|
2008-10-28 06:45:42 +00:00 |
Arvid Norberg
|
efcaee9c2d
|
fix for when DHT is started before a listen port has been configured
|
2008-10-27 03:45:08 +00:00 |
Arvid Norberg
|
65c4b7ec13
|
fix for when removing a torrent when it is in the checking state
|
2008-10-26 09:23:00 +00:00 |
Arvid Norberg
|
8f7a3ddfe0
|
fix bug for when a torrent queued for checking was removed
|
2008-10-26 04:10:27 +00:00 |
Arvid Norberg
|
49c01d7754
|
moved UPNP_LOGGING out of upnp.cpp and added alerts for when upnp logs something
|
2008-10-22 01:12:14 +00:00 |
Arvid Norberg
|
54eb378a1e
|
simplified is_active() function
|
2008-10-19 04:31:33 +00:00 |
Arvid Norberg
|
f04e9e9875
|
made unchoke interval depend on piece size
|
2008-10-18 22:35:10 +00:00 |
Arvid Norberg
|
3d75732145
|
changed variant_stream to return a pointer instead of a reference when querying for underlying type (avoids exceptions)
|
2008-10-18 07:12:04 +00:00 |
Arvid Norberg
|
cac6132aae
|
don't resume a torrent if there aren't enough upload slots
|
2008-10-14 07:41:05 +00:00 |
Arvid Norberg
|
fdadccf7a2
|
asserts for unchoke slot handling
|
2008-10-14 02:03:54 +00:00 |
Arvid Norberg
|
5710cdebf4
|
make auto-unchoke less likely to open up slots when maxed out
|
2008-10-14 00:56:44 +00:00 |
Arvid Norberg
|
b355541a7d
|
applied patch from Sergei Vorobyov to allow changing the limit on outstanding alerts
|
2008-10-07 05:46:42 +00:00 |
Arvid Norberg
|
1092c558e4
|
counts newly started torrents as active up to 2 minutes, to give them a chance to start downloading. Active torrents are not considered slow in the auto manager.
|
2008-10-01 05:25:18 +00:00 |
Arvid Norberg
|
195521db65
|
prevent new connections when shutting down
|
2008-09-30 01:14:27 +00:00 |
Arvid Norberg
|
a3751cfcbe
|
fixed bug in peer_connection::incoming_piece() in case blocks were skipped. Fixed warnings.
|
2008-09-25 20:12:53 +00:00 |
Arvid Norberg
|
1ac3b8298c
|
report tracker bandwidth usage and include it in rate limiter
|
2008-09-22 00:15:05 +00:00 |
Arvid Norberg
|
de2859d9b0
|
fixed incorrect assert
|
2008-09-21 23:23:52 +00:00 |
Arvid Norberg
|
ea578a6acf
|
adds ut_pex, ut_metadata and smart_ban by default in session constructor. Also starts upnp and nat-pmp by default. Fixes #399
|
2008-09-21 23:19:58 +00:00 |
Arvid Norberg
|
0338510b9b
|
added more bandwidth monitoring of DHT and TCP/IP overhead. added monitoring of the running DHT lookups
|
2008-09-20 17:42:25 +00:00 |
Arvid Norberg
|
cc67830faf
|
support max_upload_slots of 0. #395
|
2008-09-06 21:16:04 +00:00 |
Arvid Norberg
|
c88071ae10
|
fixed race when adding router nodes to the dht (router nodes should be added before it's started)
|
2008-09-02 06:37:40 +00:00 |
Arvid Norberg
|
0074b10b88
|
fix optimistic unchoke when there is no metadata
|
2008-09-02 05:54:05 +00:00 |
Arvid Norberg
|
e670b2fa7f
|
fixed indentation
|
2008-08-29 00:44:55 +00:00 |
Arvid Norberg
|
9625648026
|
filter loopback and local network IPs as external addresses. Re-open main_session.log when changing port (to create it in the right folder). Use a listen socket queue length of 5 instead of 0. It seemed like 0 meant 0 instead of OS chooses
|
2008-08-25 21:17:24 +00:00 |
Arvid Norberg
|
49e76f510f
|
stop scraping torrents when session is paused
|
2008-07-19 07:45:15 +00:00 |
Arvid Norberg
|
72b99059e7
|
optimized policy::peer
|
2008-07-14 11:15:35 +00:00 |
Arvid Norberg
|
c5af2c2eaf
|
moved tracker announces into a timer instead of polling every second. Added state to properly send complete, started and stopped events
|
2008-07-12 08:25:19 +00:00 |
Arvid Norberg
|
486fb1082d
|
reports event in tracker_announce_alert
|
2008-07-11 12:00:29 +00:00 |
Arvid Norberg
|
96ca475652
|
added redundant and failed byte counters to session
|
2008-07-11 07:30:04 +00:00 |
Arvid Norberg
|
d2c53b50d5
|
timeout incoming connections
|
2008-07-10 10:35:11 +00:00 |
Arvid Norberg
|
e576babbb8
|
changed the alerts to have categories and to be filtered with a bitmask instead of having a severity and be filtered by a severity level.
|
2008-07-06 12:22:56 +00:00 |
Andrew Resch
|
94cbac20cd
|
Do not count downloads as seeds in the queue system.
|
2008-07-01 21:07:18 +00:00 |
Arvid Norberg
|
d396ab7b17
|
added pause and resume to the session. Fixes #349
|
2008-06-29 19:08:30 +00:00 |
Arvid Norberg
|
d1b2cd558e
|
moved peer time out logic to second tick
|
2008-06-29 05:35:48 +00:00 |
cg25
|
ff3e80c42f
|
Removed svn:executable property from {c,h}pp files in branches/RC_0_13 and
trunk.
|
2008-06-25 14:15:21 +00:00 |
Arvid Norberg
|
84221e05f8
|
checking torrents fix when aborting session
|
2008-06-24 12:17:42 +00:00 |
Andrew Resch
|
402da3c77c
|
Make active_limit == -1 mean unlimited
|
2008-06-22 22:49:18 +00:00 |
Arvid Norberg
|
0f0ea269bc
|
added an active torrent limit
|
2008-06-21 12:31:28 +00:00 |
Arvid Norberg
|
d0e579826c
|
added an option to not count inactive torrents against the limits for auto managed torrents
|
2008-06-21 09:15:29 +00:00 |
Arvid Norberg
|
7fe6c474ce
|
fix auto manage bug related to checking torrents
|
2008-06-18 13:02:03 +00:00 |
Andrew Resch
|
d70ec645d7
|
Make 'active_seeds' and 'active_downloads' use -1 as unlimited
|
2008-06-17 15:44:04 +00:00 |
Arvid Norberg
|
b55670aa14
|
fixed typo
|
2008-06-16 22:33:42 +00:00 |
Arvid Norberg
|
6c24bd0774
|
moves force checked torrents to the end of the queue. Fixes #350
|
2008-06-16 22:27:14 +00:00 |
Arvid Norberg
|
7df5d4a9c6
|
changed queuing logic
|
2008-06-13 05:11:36 +00:00 |
Arvid Norberg
|
5923ef5b43
|
fixed file check ordering to respect the queue position. Fixes #350
|
2008-06-12 21:22:24 +00:00 |
Arvid Norberg
|
6db61166be
|
recalculate queued torrents sooner when changing queuing settings
|
2008-06-12 06:58:42 +00:00 |
Arvid Norberg
|
31c9d378f5
|
completed queuing. It is now possible to change and query queue position of torrents.
|
2008-05-29 03:37:19 +00:00 |
Arvid Norberg
|
3910fe78de
|
separated file_storage from torrent_info and create_torrent
|
2008-05-28 08:44:40 +00:00 |
Arvid Norberg
|
67354421fb
|
introduced an error state for torrents. Torrents with an error are not restarted automatically
|
2008-05-20 07:57:44 +00:00 |
Arvid Norberg
|
777954ab3e
|
automatically scrape auto managed torrents to keep track of downloader/seed ratio
|
2008-05-19 04:06:25 +00:00 |
Arvid Norberg
|
c460704a5f
|
streamlined class footprint by reducing padding
|
2008-05-19 02:52:32 +00:00 |
Arvid Norberg
|
f296d5a64d
|
limits the number of connections depending to getrlimit(). Fixes #232
|
2008-05-16 15:19:38 +00:00 |
Arvid Norberg
|
f259e34f86
|
peer_connection fix for incoming connections
|
2008-05-12 10:10:39 +00:00 |
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 |
Arvid Norberg
|
00948e9fc4
|
first attempt to implement SOCKS5 and proper HTTP proxy support. fixes #22
|
2007-04-25 18:26:35 +00:00 |
Arvid Norberg
|
d43a6b80bf
|
added an abstraction layer or tcp sockets, to be able to support socks proxys
|
2007-04-23 21:36:21 +00:00 |
Arvid Norberg
|
e49c49c892
|
fixes #35
|
2007-04-17 23:06:00 +00:00 |
Arvid Norberg
|
849db39472
|
added peer_blocked_alert which is generated when a peer is blocked by the IP filter. Fixed the ip-filter parsing in client_test and made it report the peer_blocked_alert. Added documentation.
|
2007-04-17 05:56:43 +00:00 |
Arvid Norberg
|
129b447509
|
fixed issue where lsd, natpmp and upnp would only be rebound if dht was enabled
|
2007-04-14 17:30:57 +00:00 |
Arvid Norberg
|
0a32fffdfd
|
exception fixes for UPnP and NAT-PMP. port fix for lsd
|
2007-04-14 15:51:36 +00:00 |
Arvid Norberg
|
e503e334d5
|
fix to previous check-in
|
2007-04-11 17:44:15 +00:00 |
Arvid Norberg
|
3ed24da320
|
added source to peer_info, which is a bitmask of the sources where the peer has been acquired from
|
2007-04-10 21:23:13 +00:00 |
Arvid Norberg
|
d88ffcc0e4
|
removed some more unecessary boost.date_time dependencies
|
2007-04-10 07:52:58 +00:00 |
Arvid Norberg
|
306d015924
|
added a timer abstraction and replaced the use of boost.date_time. the timers used now are QueryPerformanceCounter on windows, mach_absolute_time on darwin and currently falls back on boost.date_time on other platforms. This has the advantage of being a monotonic clock, and also slightly more efficient
|
2007-04-04 22:27:36 +00:00 |
Arvid Norberg
|
5e32484194
|
first stab at getting local service discovery
|
2007-04-04 02:06:07 +00:00 |
Arvid Norberg
|
ec2962dd62
|
extensions are now instantiated for web seeds as well
|
2007-04-02 20:00:24 +00:00 |
Arvid Norberg
|
9e1123eb9e
|
more UPnP work. updated ChangeLog and features documentation
|
2007-03-31 23:23:30 +00:00 |
Arvid Norberg
|
0b55367664
|
fix related to listen port
|
2007-03-30 03:24:37 +00:00 |
Arvid Norberg
|
a9d18439e9
|
piece picker fix
|
2007-03-30 03:09:28 +00:00 |
Arvid Norberg
|
72fd437ff0
|
moved the resume data verification to the storage, since the storage may map the files differently. The creation of resume data should probably also be moved there
|
2007-03-27 23:49:05 +00:00 |
Arvid Norberg
|
8957b64c04
|
prepared for precompiled headers support. fixed issue where storage didn't lock the session properly. fixed typo in natpmp.cpp
|
2007-03-17 17:15:16 +00:00 |
Arvid Norberg
|
81ad74cbcd
|
fixes related to nat port mapping and having dht and bittorrent listen on the same port number
|
2007-03-16 21:45:29 +00:00 |
Arvid Norberg
|
a6b1583d3f
|
fixes to natpmp to take listen interface into account. added colors to the log in client_test
|
2007-03-16 21:04:58 +00:00 |
Arvid Norberg
|
118e1cf00d
|
added alerts for reporting nat-pmp status
|
2007-03-16 08:25:08 +00:00 |
Arvid Norberg
|
029953c5ae
|
made the storage into a customization point. it is now interchangable for a custom implementation
|
2007-03-16 05:29:23 +00:00 |
Arvid Norberg
|
52d6a201be
|
merged error message fix from RC_0_12 branch
|
2007-03-16 01:24:40 +00:00 |
Arvid Norberg
|
ecaa3068d5
|
added natpmp support. bumped version number to 0.13. added piece priority support to the piece picker. optmized and simplified the piece picker in the process.
|
2007-03-15 22:03:56 +00:00 |
Arvid Norberg
|
a3dbea606e
|
added debug message to dht. fixed while loop around condition variable in checker thread.
|
2007-03-06 17:27:17 +00:00 |
Arvid Norberg
|
7e3a415d0b
|
made the trackers pick the most suitable interface to connect to (IPv6/Ipv4 issue). added Mono Torrent to identify_client and dht statistics.
|
2007-03-02 18:40:02 +00:00 |
Arvid Norberg
|
8f1128f540
|
more dht fixes. polished client test output some
|
2007-03-02 05:02:12 +00:00 |
Arvid Norberg
|
83c2039ff7
|
fix to previous dht fix. removed some deprication warnings on msvc-8. various fixes
|
2007-03-02 01:16:59 +00:00 |
Arvid Norberg
|
c40a75f844
|
IPv6 fixes
|
2007-02-27 17:21:46 +00:00 |
Arvid Norberg
|
7888b72e12
|
fix for crashes when stopping or restarting DHT
|
2007-02-25 09:42:43 +00:00 |
Arvid Norberg
|
b0ae8d3a14
|
tracker fixes for trackerless torrents
|
2007-02-21 17:15:47 +00:00 |
Arvid Norberg
|
11b44fd286
|
fixed typo in previous check in
|
2007-02-21 03:05:25 +00:00 |
Arvid Norberg
|
4b66454a38
|
another fix for closing torrentless torrents
|
2007-02-20 22:58:31 +00:00 |
Arvid Norberg
|
3fc73cb219
|
added a web seed test (requires manual environment setup for web server). fixed bug in torrent_info where file offsets could be left uninitialized. Fixed bug in torrent which would cause a crash in case a torrent without any trackers would be aborted.
|
2007-02-20 01:42:12 +00:00 |
Arvid Norberg
|
6a47eb501e
|
fixed problem with torrents that were paused not getting any upload slots or connection quota once the were unpaused
|
2007-02-12 18:21:14 +00:00 |
Arvid Norberg
|
8d5e14d557
|
fixed race condition when fast resume data was being checked
|
2007-02-04 02:08:46 +00:00 |
Arvid Norberg
|
c2a032be7a
|
fix for use with latest version of asio
|
2007-01-29 07:37:32 +00:00 |
Arvid Norberg
|
87f7b186b0
|
replaced the bandwidth throttling code with a leaky bucket for better accuracy
|
2007-01-10 15:02:25 +00:00 |
Daniel Wallin
|
39b977973f
|
Added accessor functions for upload_rate_limit and download_rate_limit
|
2007-01-01 23:51:24 +00:00 |
Arvid Norberg
|
0f3874028b
|
added btgdaemon to identify client and applied wojci's patch to add num_connections() and num_uploads() to session
|
2007-01-01 21:04:30 +00:00 |
Arvid Norberg
|
a78ef76592
|
commented out an expensive invariant check. Fixed http parser to accept responses with only LF (and not CRLF)
|
2006-12-29 23:40:56 +00:00 |
Arvid Norberg
|
f83db0a423
|
consistency fixes related to shutting down
|
2006-12-21 22:20:28 +00:00 |
Arvid Norberg
|
13facbdb83
|
added a strand for all async operations for thread safety
|
2006-12-15 17:47:21 +00:00 |
Arvid Norberg
|
90feac8126
|
deallocates the piece picker when seeding, to free up unused memory
|
2006-12-04 12:20:34 +00:00 |
Arvid Norberg
|
947df91b20
|
improved support for multiple connections per ip
|
2006-11-30 11:56:19 +00:00 |
Arvid Norberg
|
ce9eed5ea1
|
fixed incorrectly named members of session_status, fixed compilation error in ut_pex, documentation updates
|
2006-11-28 18:18:37 +00:00 |
Arvid Norberg
|
0abb46e794
|
fixed extension bug, where 0-pointers would be added the the extension list
|
2006-11-23 16:21:45 +00:00 |
Arvid Norberg
|
1015864eeb
|
fixed division by zero problem in allocate_resources, removed incorrect asserts
|
2006-11-22 12:15:47 +00:00 |
Arvid Norberg
|
8e289bb233
|
improved logging and fixed glitch in quota management.
|
2006-11-21 15:51:28 +00:00 |
Arvid Norberg
|
68e8ea35ea
|
added logging of upload and download statistics, revised some of the quota management, added support for sessions to allocate_resources (patch by wojci)
|
2006-11-20 21:03:58 +00:00 |
Arvid Norberg
|
c52de08421
|
added more logging and modified the resource allocation algorithm. A new, looser, upload and download bandwidth limiter is now used, in order to be able to use more of the available bandwidth
|
2006-11-19 15:29:58 +00:00 |
Arvid Norberg
|
01f1d01d58
|
improved logging, fixed option to allow multiple connections from the same IP
|
2006-11-15 21:39:58 +00:00 |
Arvid Norberg
|
51e3261dd0
|
the file pool has been moved to the session and its size can be controlled via session_settings. Added untested option to allow multiple connections from the same IP.
|
2006-11-14 15:53:38 +00:00 |
Arvid Norberg
|
e35fc5c4be
|
refactored extensions and added a plugin interface. fixed file.cpp for windows
|
2006-11-14 00:08:16 +00:00 |
Arvid Norberg
|
ec53633975
|
added mutex locks around critical sections
|
2006-10-13 00:01:18 +00:00 |
Arvid Norberg
|
c8fbd5db21
|
split session and session_impl into separate compilation units
|
2006-10-11 20:57:54 +00:00 |