Arvid Norberg
|
3562c3e646
|
add bind address support to http_connection and replace http_tracker_connection's code with http_connection
|
2008-01-31 08:24:01 +00:00 |
Arvid Norberg
|
6caca17883
|
refactored gzip code and added gzip support to http_connection
|
2008-01-30 18:32:13 +00:00 |
Arvid Norberg
|
ebde862341
|
capped the allowed depth in bencoded messages, to avoid triggering stack overflows by malformed messages
|
2008-01-28 02:58:17 +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
|
5527a8e9b1
|
fixed build issue on msvc
|
2008-01-27 21:03:33 +00:00 |
Arvid Norberg
|
365b8c07c6
|
iterator fixes (to avoid triggering safe iterator asserts)
|
2008-01-19 18:12:02 +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
|
97511f2819
|
removed stray space
|
2008-01-14 17:25:08 +00:00 |
Arvid Norberg
|
b19bf337bf
|
generalized peer read/write state
|
2008-01-13 23:46:43 +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
|
795bee4b2c
|
added option to disable invariant checks and added more build documentation
|
2008-01-13 06:17:56 +00:00 |
Arvid Norberg
|
9304bd747c
|
added graphing script for bandwidth manager log
|
2008-01-13 05:14:49 +00:00 |
Arvid Norberg
|
56210c1687
|
added asserts to make sure the pool allocator for dht messages allocates blocks of correct size
|
2008-01-13 04:24:10 +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
|
7f56486cf0
|
separated http_parser to its own file
|
2008-01-12 09:36:03 +00:00 |
Arvid Norberg
|
81302c8fed
|
fixed http_connection redirection support and added test (still requires lighttp)
|
2008-01-12 01:41:56 +00:00 |
Arvid Norberg
|
f36e6a6c4f
|
proper default gateway discovery
|
2008-01-11 09:38:05 +00:00 |
Arvid Norberg
|
72edfc2ee7
|
improved network interface enumeration and upnp device filtering
|
2008-01-11 06:49:37 +00:00 |
Arvid Norberg
|
3a727e99ff
|
expose more info through peer_info
|
2008-01-10 22:13:23 +00:00 |
Arvid Norberg
|
9fca960d3c
|
bandwidth limiter mutex fix
|
2008-01-10 06:19:20 +00:00 |
Arvid Norberg
|
c047c4dd71
|
broadcast socket header file update
|
2008-01-09 18:51:54 +00:00 |
Arvid Norberg
|
695cd6407b
|
remove use of strand
|
2008-01-08 05:47:43 +00:00 |
Arvid Norberg
|
4420473b88
|
made send buffer watermark configurable
|
2008-01-08 01:16:30 +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
|
1d6e0f5bf6
|
bandwidth request block size optimization
|
2008-01-07 04:47:20 +00:00 |
Arvid Norberg
|
e5d1456c58
|
added a failcounter to upnp portmaps
|
2008-01-07 02:35:29 +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
|
0ed722036f
|
fixed assert
|
2008-01-05 00:54:30 +00:00 |
Arvid Norberg
|
a49cb42345
|
fixed race condition in bandwidth limiter
|
2008-01-03 18:53:07 +00:00 |
Arvid Norberg
|
29ccb9220b
|
broadcast socket fix
|
2008-01-03 10:58:16 +00:00 |
Arvid Norberg
|
4e559e8dfe
|
change to entry to support building client in debug mode and libtorrent in release mode
|
2008-01-03 03:10:25 +00:00 |
Arvid Norberg
|
53de59b286
|
removed packet_iterator from Makefile.am
|
2008-01-02 03:43:49 +00:00 |
Arvid Norberg
|
fcd2408f11
|
fast extension fix, added some logging for fast extension messages, improved test to catch the problem
|
2008-01-02 03:18:29 +00:00 |
Arvid Norberg
|
91e01442e8
|
added bandwidth_limit.hpp and bandwidth_queue_entry.hpp to makefiles
|
2008-01-01 21:15:23 +00:00 |
Arvid Norberg
|
ddf16fb3bb
|
separated bandwidth_manager into bandwidht_limit and bandwidth_queue_entry and fixed problems related to #225
|
2007-12-31 09:41:50 +00:00 |
Arvid Norberg
|
07d1fe84c3
|
made udp and http tracker connections build without exception support
|
2007-12-30 01:57:57 +00:00 |
Arvid Norberg
|
6c42830f97
|
made http_parser not use exceptions
|
2007-12-29 18:24:50 +00:00 |
Arvid Norberg
|
599ed646f0
|
made natpmp build without exception support
|
2007-12-29 07:26:36 +00:00 |
Arvid Norberg
|
a279e8c9ec
|
made bandwidth_manager build without exceptions
|
2007-12-29 05:43:19 +00:00 |
Arvid Norberg
|
8b76457b80
|
support in broadcast_socket to be built without exception support
|
2007-12-29 05:14:33 +00:00 |
Arvid Norberg
|
07b4024024
|
made debug.hpp build without exception support
|
2007-12-29 02:03:13 +00:00 |
Arvid Norberg
|
eb8ea0f461
|
made torrent_info not rely on exception support
|
2007-12-28 20:11:10 +00:00 |
Arvid Norberg
|
501611173e
|
removed unused header 'packet_iterator.hpp'
|
2007-12-28 19:46:08 +00:00 |
Arvid Norberg
|
e88bcaea90
|
made http_stream and proxy_base support builds with exceptions disabled
|
2007-12-28 19:26:26 +00:00 |
Arvid Norberg
|
e6e5b43219
|
added asserts that the type of a bencoded entry is not assumed when built with no exceptions
|
2007-12-28 19:07:28 +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
|
8a47c849ce
|
fix in the smart_ban to not use invalid pointers
|
2007-12-27 20:57:58 +00:00 |
Arvid Norberg
|
b2a49d2db9
|
put back #include <cassert>
|
2007-12-27 10:50:12 +00:00 |
Arvid Norberg
|
904d9bb50b
|
demangles symbols in assert tracebacks
|
2007-12-27 06:15:52 +00:00 |
Arvid Norberg
|
86de8b8bf6
|
turned assert into TORRENT_ASSERT
|
2007-12-27 03:43:02 +00:00 |
Arvid Norberg
|
81cf247cda
|
attempt to fix #212. Store 4 bytes and 16 bytes arrays instead of in_addr in ip-filter
|
2007-12-24 21:49:46 +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
|
b23e9e3795
|
attempt to fix #201. Uses separate sockets to send broadcast messages in order to be sure to receive unicast responses
|
2007-12-22 17:33:04 +00:00 |
Arvid Norberg
|
1724ce5974
|
fixed bug in UPnP and added functionality to grab router model
|
2007-12-22 16:47:46 +00:00 |
Arvid Norberg
|
e38c0c9cdc
|
added bencoding function and updated ut_metadata extension
|
2007-12-22 08:15:05 +00:00 |
Arvid Norberg
|
9aa2ddec80
|
added a plugin 'smart_ban' that can ban peers sending bad data with higher accuracy
|
2007-12-18 06:04:54 +00:00 |
Arvid Norberg
|
f6b34b7f0b
|
added missing include guard to disk_io_thread.hpp
|
2007-12-17 22:07:03 +00:00 |
Arvid Norberg
|
ac28fa7b62
|
some more asserts related to bandwidth manager
|
2007-12-14 18:02:06 +00:00 |
Arvid Norberg
|
948f53a8af
|
assert fix
|
2007-12-14 06:09:44 +00:00 |
Arvid Norberg
|
9b54043478
|
attempt to fix potential deadlock in disk_io_thread
|
2007-12-13 04:05:25 +00:00 |
Arvid Norberg
|
07ad5d9796
|
bandwidth_manager assert fix
|
2007-12-10 18:13:57 +00:00 |
Arvid Norberg
|
f06bf0d440
|
bandwidth manager fix
|
2007-12-09 18:44:26 +00:00 |
Arvid Norberg
|
8c3f9571de
|
socks5 support for udp messages
|
2007-12-09 04:15:24 +00:00 |
Arvid Norberg
|
7cccdcaa7b
|
makefile fixes
|
2007-12-09 01:21:20 +00:00 |
Arvid Norberg
|
fff87a6845
|
added m4 script for boost iostream and added ut_metadata to makefile
|
2007-12-08 22:02:59 +00:00 |
Arvid Norberg
|
a7f6e3bccb
|
added abuse protection to DHT. nodes that hammer will be ignored
|
2007-12-04 02:53:10 +00:00 |
Arvid Norberg
|
20621cae02
|
added magnet-uri functions and a base32 decode function
|
2007-12-03 06:03:16 +00:00 |
Arvid Norberg
|
a7b5250058
|
move url_has_argument to escape_string and added unit tests
|
2007-12-02 19:10:45 +00:00 |
Arvid Norberg
|
9727634f09
|
added base32encode and moved it into escape_string.hpp
|
2007-12-02 18:34:37 +00:00 |
Arvid Norberg
|
f3d45fcfc1
|
initial support for ut_metadata
|
2007-12-02 04:16:51 +00:00 |
Arvid Norberg
|
db0ae6bd7e
|
increased default tracker timeout from 20 seconds to 40 seconds
|
2007-11-30 17:37:50 +00:00 |
Arvid Norberg
|
02ed01d2c4
|
added first try of a mapped storage
|
2007-11-30 00:35:09 +00:00 |
Arvid Norberg
|
1cc0118c9c
|
supports retry for web seeds that respond with 503
|
2007-11-27 03:37:47 +00:00 |
Arvid Norberg
|
c92fef5b69
|
simplified torrent_handle by using a macro and moving the big chunks of code into torrent (get_download_queue() and get_peer_info())
|
2007-11-25 18:48:43 +00:00 |
Arvid Norberg
|
769d8aefe2
|
first version of 'part file' support. Can currently only be set when starting torrent
|
2007-11-25 10:47:05 +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
|
81ce2e7890
|
reverted [1760] and added documentation for downloading_metadata
|
2007-11-24 04:19:21 +00:00 |
Arvid Norberg
|
3edcabd845
|
removed downloading_metadata state. Fixes #188
|
2007-11-24 03:24:31 +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
|
fabfe6cd50
|
added scrape support
|
2007-11-20 22:46:27 +00:00 |
Arvid Norberg
|
da17b30e63
|
proxy_base shutdown fix
|
2007-11-19 05:18:50 +00:00 |
Arvid Norberg
|
fd11e07a55
|
memory optimization to free piece hashes is now optional
|
2007-11-19 04:58:52 +00:00 |
Arvid Norberg
|
947b3d59d1
|
updated makefiles to reflect new asio files
|
2007-11-18 17:20:38 +00:00 |
Arvid Norberg
|
a1a841a04d
|
http_connection fixes and unit test (not self contained yet, just like test_web_seed)
|
2007-11-18 04:12:35 +00:00 |
Arvid Norberg
|
fa8c0c1133
|
fixed missing include
|
2007-11-18 01:34:43 +00:00 |
Arvid Norberg
|
7be29d9b84
|
applied 'logpath' patch from #202
|
2007-11-16 21:21:28 +00:00 |
Arvid Norberg
|
95d09070fb
|
cancels more async operations on shutdown
|
2007-11-11 19:09:29 +00:00 |
Arvid Norberg
|
41ef204f26
|
closes bandwidth rate limiters
|
2007-11-08 07:52:41 +00:00 |
Arvid Norberg
|
80e8aa0a18
|
add_extension on torrent_handle, to add an extension on an already running torrent
|
2007-11-08 01:45:35 +00:00 |
Arvid Norberg
|
53c125a9b3
|
made entry not require exceptions
|
2007-11-02 02:02:52 +00:00 |
Arvid Norberg
|
cb9fbea5f7
|
made bdecoder not require exception support
|
2007-11-02 01:08:10 +00:00 |
Arvid Norberg
|
fd51412b70
|
shutdown improvements. Fixes stall
|
2007-11-02 00:27:53 +00:00 |
Arvid Norberg
|
d2880ff648
|
made allocate_send_buffer, setup_send and send_buffer virtual in peer_connection. Fixes #196
|
2007-10-31 10:20: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
|
6aeefaf513
|
removed self() from peer_connection, since it's in intrusive_ptr_base now
|
2007-10-31 09:44:31 +00:00 |
Arvid Norberg
|
0439399169
|
replaced std::vector with buffer
|
2007-10-30 17:30:49 +00:00 |
Arvid Norberg
|
e28689237d
|
uses checked_delete instead of plain delete
|
2007-10-30 10:08:09 +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
|
636d5f2005
|
upnp fixes and more debug asserts and more logging. Might fix #167
|
2007-10-26 00:47:30 +00:00 |
Arvid Norberg
|
ee61db101e
|
variant_stream fix
|
2007-10-26 00:43:28 +00:00 |
Arvid Norberg
|
5f89db91a3
|
query extra fields in torrent files without requiring exception handling
|
2007-10-24 18:15:13 +00:00 |
Arvid Norberg
|
96ba6bc3b2
|
piece picker priority fix
|
2007-10-23 22:10:08 +00:00 |
Arvid Norberg
|
f054ae7c2d
|
made the handshake timeout configurable and defaults to 10 seconds
|
2007-10-23 00:19:28 +00:00 |
Arvid Norberg
|
2662c84f01
|
fixed issue when calling close on an uninstantiated variant_stream + variant_stream cleanup (removed unncessesary templates)
|
2007-10-22 22:53:31 +00:00 |
Arvid Norberg
|
fcc238e801
|
lowered piece timeout and sends cancels for pieces when a time out occurs
|
2007-10-22 20:58:42 +00:00 |
Arvid Norberg
|
ade50123c3
|
cleaned up unnecessary template functions
|
2007-10-22 10:54:48 +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
|
b032c26bf0
|
adds invariant check to make sure pieces that are complete are also checked. adds a debug function in the disk_io_thread. Fixes a problem with a failing disk write that would not clear the block for re-download. Adds some extra session logging
|
2007-10-18 00:32:16 +00:00 |
Arvid Norberg
|
a1356bdb7f
|
intrusive_ptr_base fix
|
2007-10-15 17:56:22 +00:00 |
Arvid Norberg
|
1699fa4652
|
fast reconnect fixes
|
2007-10-15 05:03:29 +00:00 |
Arvid Norberg
|
78f0aaf654
|
applied patch from #184
|
2007-10-13 18:24:24 +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
|
09bcb3ff2e
|
removed unused left-overs
|
2007-10-12 22:28:52 +00:00 |
Arvid Norberg
|
c6c77d8efc
|
fixed so that peers only get one fast-reconnect
|
2007-10-12 01:12:30 +00:00 |
Arvid Norberg
|
995485daeb
|
fixed destruction order issue
|
2007-10-09 22:17:16 +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
|
28274bf1bd
|
improved shutdown behavior. decreased tracker timeouts to 5 seconds. added more logging
|
2007-10-07 18:06:56 +00:00 |
Arvid Norberg
|
b51f40260a
|
fixed warning in intel-9.0
|
2007-10-07 16:42:31 +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
|
2940d253c3
|
completed fast reconnect fix
|
2007-10-04 21:26:50 +00:00 |
Arvid Norberg
|
82369a552b
|
fix to make torrent_info assignable
|
2007-10-04 20:47:44 +00:00 |
Arvid Norberg
|
c4c8d0f533
|
moved piece_finished_alert to debug level
|
2007-10-03 23:15:13 +00:00 |
Arvid Norberg
|
51f12e774e
|
moved block_downloading_alert and block_finished_alert to debug level
|
2007-10-03 22:53:52 +00:00 |
Arvid Norberg
|
4cab49cbdf
|
saves banned peers in resume data
|
2007-10-03 17:37:15 +00:00 |
Arvid Norberg
|
fd180c4294
|
fixed bug in policy
|
2007-10-02 20:30:53 +00:00 |
Arvid Norberg
|
3dcae188fb
|
policy now has a map of peers instead of a flat list, makes it more efficient to do lookups
|
2007-10-02 19:11:04 +00:00 |
Arvid Norberg
|
16886741d0
|
release_files now keeps the torrent object alive
|
2007-10-02 18:34:34 +00:00 |
Arvid Norberg
|
973e7be386
|
added router_for_interface along with a proper windows implementation. NAT-PMP support is now good on windows
|
2007-10-01 17:21:19 +00:00 |
Arvid Norberg
|
c3991bcfea
|
fix for previous check-in
|
2007-10-01 08:59:37 +00:00 |
Arvid Norberg
|
f20cf1b92f
|
fixes issue whith failure to create logs causes libtorrent to quit, fixes ticket #168
|
2007-10-01 08:36:15 +00:00 |
Arvid Norberg
|
9bcb4e9f09
|
fixed asio include header
|
2007-10-01 07:22:51 +00:00 |
Arvid Norberg
|
7720b48263
|
removed invalid inline
|
2007-10-01 02:21:58 +00:00 |
Arvid Norberg
|
29c8cc1a98
|
fixed makefile to include new asio headers
|
2007-09-29 22:11:22 +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
|
c65f33dfcc
|
added chained buffer to makefiles
|
2007-09-29 21:08:05 +00:00 |
Arvid Norberg
|
9597b98f4d
|
moved log_time() into session.cpp instead of being inlined
|
2007-09-29 20:35:55 +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
|
d48236a738
|
changed http_parser slightly. uses http_parser in lsd.cpp. added more tests to the http_parser
|
2007-09-25 03:14:05 +00:00 |
Arvid Norberg
|
1df7c2006a
|
makefile update for recent asio
|
2007-09-24 19:13:18 +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
|
3b6aee6d86
|
switched out std::vector to use libtorrent::buffer as an optimization
|
2007-09-23 00:51:45 +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
|
022c38d5f4
|
added is_any(address) function
|
2007-09-22 16:26:03 +00:00 |
Arvid Norberg
|
87c079033d
|
fixed race condition in enum_net
|
2007-09-22 16:22:41 +00:00 |
Arvid Norberg
|
a26bd55ff9
|
variant_stream fixes and added an operator<< for tcp::endpoint
|
2007-09-22 16:21:07 +00:00 |
Arvid Norberg
|
053f499ec6
|
better upnp support
|
2007-09-20 23:25:40 +00:00 |
Arvid Norberg
|
587d40e1ae
|
updates to enum_net
|
2007-09-20 16:25:07 +00:00 |