Arvid Norberg
cbf8e6f3b1
introduced TORRENT_NO_DEPRECATE, to disable deprecated functions. Made example not use deprecated functions. Documented magnet uri related functions.
2008-08-03 15:14:08 +00:00
Arvid Norberg
18b14e56df
made the minimum announce interval configurable
2008-08-01 22:34:37 +00:00
Arvid Norberg
854f029fc1
fixed warning on gcc 4.3
2008-07-30 06:41:05 +00:00
Arvid Norberg
4aee6df9d4
fixed create_torrent
2008-07-22 13:01:22 +00:00
Arvid Norberg
b22082b77b
add set_priv and priv to create_torrent
2008-07-21 17:04:31 +00:00
Arvid Norberg
df27541904
only use wpath on windows
2008-07-20 16:13:52 +00:00
Arvid Norberg
c605c8021f
added file priority functions
2008-07-20 16:00:08 +00:00
Arvid Norberg
417855848f
merged file_win.cpp and file.cpp (removed the need for file_win.cpp). The file is no longer a pimpl
2008-07-20 11:14:54 +00:00
Arvid Norberg
0433a32857
fixed msvc warning
2008-07-20 10:35:51 +00:00
Arvid Norberg
7607034ab6
exposed upload_only in peer_info
2008-07-19 07:57:43 +00:00
Arvid Norberg
21dff61cb5
clears read cache when paused. Saves memory
2008-07-18 15:31:22 +00:00
Arvid Norberg
3b35b2c2e3
added dict_find_string to lazy_entry
2008-07-18 13:48:09 +00:00
Arvid Norberg
2ab80ddc3a
moved the error_category to error_code.cpp and added the new files (error_code.{hpp|.cpp}) to the Jamfile and makefiles
2008-07-18 10:22:16 +00:00
Arvid Norberg
429a118dd2
keep track of interest more tightly. better support for upload_only
2008-07-18 10:03:42 +00:00
Andrew Resch
755567a7a0
Fix building with msvc
2008-07-17 23:56:58 +00:00
Arvid Norberg
3cb1369385
improved error reporting of file errors (uses boost.system's error_code). Now permission errors are properly reported when checking files
2008-07-17 23:41:46 +00:00
Arvid Norberg
72b99059e7
optimized policy::peer
2008-07-14 11:15:35 +00:00
Arvid Norberg
7541d9d246
don't allow force_tracker_request when paused
2008-07-12 18:45:58 +00:00
Arvid Norberg
ff6cbbc6b6
added torrent_handle::clear_error() to retry a torrent that is in an error state (torrent_status::error is set)
2008-07-12 17:00:52 +00:00
Arvid Norberg
9bf25d1006
changed the definition of file_progress and deprecated the old function. Python bindings only exposes the new one
2008-07-12 13:38:22 +00:00
Arvid Norberg
e49c015c92
fixed torrent alert assert
2008-07-12 11:04:23 +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
9c9c13c7bb
exposed read cache info as well as write cache
2008-07-11 10:29:26 +00:00
Arvid Norberg
589e098002
fixed parole mode with timeouts and made it optional
2008-07-11 09:23:22 +00:00
Arvid Norberg
de8f676b98
increase timeouts
2008-07-11 09:02:05 +00:00
Arvid Norberg
96ca475652
added redundant and failed byte counters to session
2008-07-11 07:30:04 +00:00
Arvid Norberg
680dab5a67
make 'snubbed' more sticky by only giving one request_timeout back when a new block is being received
2008-07-10 19:31:22 +00:00
Arvid Norberg
1bdb6afebd
fixes to previous connection timeout check-in
2008-07-10 10:58:30 +00:00
Arvid Norberg
d06f125513
improved accuracy of the file progress report to include completed blocks from incomplete pieces (but not partial blocks)
2008-07-09 10:45:07 +00:00
Arvid Norberg
55a944c014
added a unwanted_block_alert
2008-07-08 18:41:04 +00:00
Arvid Norberg
5c749bcb3c
added base class for peer_alerts and turned more alerts into peer_alerts with more information about the peer that generated it
2008-07-08 09:30:10 +00:00
Arvid Norberg
a20f1a8fa0
keeps track of the number of requests waiting in the send buffer and adjusts bandwidht priority accordingly in the bandwidth limiter
2008-07-08 00:03:08 +00:00
Arvid Norberg
f7042ca84a
improved piece timeout and peer snubbing logic
2008-07-07 12:04:06 +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
Arvid Norberg
dab1b22982
made get_asio.sh script check out asio directly into the libtorrent directory. Certain tools cannot handle the symbolic links properly, such as vmware folder sharing
2008-07-05 17:41:54 +00:00
Arvid Norberg
ecb538b4b2
added alert for torrent state changes. Fixes #360
2008-07-03 10:05:51 +00:00
Arvid Norberg
66a7f98d84
fixed missing torrent error state
2008-07-02 21:27:16 +00:00
Arvid Norberg
af0ebb519c
added copyright notices in files missing them
2008-07-01 18:59:13 +00:00
Arvid Norberg
40d7e2ce75
moved load_file into torrent_info.cpp to make it available on windows too. Fixed the exception free path in torrent_info
2008-07-01 11:00:00 +00:00
Arvid Norberg
10f5418ce7
switched extension handshake parsing over to use lazy_bdecode for improved performance
2008-07-01 08:04:12 +00:00
Arvid Norberg
9c84908bb9
switched resume data parsing over to use lazy_bdecode. Improves memory allocation performance, especially noticable when heap allocations are expensive. Makes it more practical to run with malloc debug. Changed resume data interface to take a vector as opposed to a parsed structure
2008-06-30 23:14:31 +00:00
Arvid Norberg
d396ab7b17
added pause and resume to the session. Fixes #349
2008-06-29 19:08:30 +00:00
Arvid Norberg
2ac5c13e6f
introduced a stricter timeout on piece requests and snubbing. exposed some more data about this through the peer_info. Fixes #40
2008-06-29 09:50:42 +00:00
Arvid Norberg
d1b2cd558e
moved peer time out logic to second tick
2008-06-29 05:35:48 +00:00
Arvid Norberg
b27b2b6e71
fixed typo
2008-06-28 17:58:15 +00:00
roman_rybalko
914dcac3d2
trunk:
...
moved to asio-1-0-0 from asio-head (get_asio & makefile fix)
tests moved to "check" target
2008-06-28 10:38:12 +00:00
Arvid Norberg
d132dd45e3
removed exceptions from pe_crypto and improved error handling
2008-06-28 10:10:05 +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
4d380c57d7
made bdecode not throw
2008-06-23 22:00:27 +00:00
Arvid Norberg
87660b96c5
renamed announce_piece to piece_passed and moved it to piece_finished and piece_failed
2008-06-23 18:54:58 +00:00
Arvid Norberg
c210b11b80
better fix for failing pieces
2008-06-23 14:45:01 +00:00
cg25
71c4f6f9b6
* improved --with-asio configure option behaviour;
...
* using -version-info flag instead of -revision one for the sake of correct
interface versioning;
* renaming library to libtorrent-rasterbar.so to avoind conflicting with other
libraries.
2008-06-23 00:09:12 +00:00
cg25
3ce23558b4
Added "--with-asio" option to configure script to be able to choose between
...
"system" and "shipped" asio when building against boost-1.34
2008-06-22 20:51:26 +00:00
Arvid Norberg
6db1b54304
simplified policy and optimized case when a piece fails hash check
2008-06-22 20:28:03 +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
b183b2e593
made it possible to export the upnp state and insert it into a different upnp instance
2008-06-20 16:14:10 +00:00
Arvid Norberg
3095a5afcc
fixed makefiles to build with asio-1.0 and get_asio script to download asio-1.0 tag
2008-06-19 12:42:45 +00:00
Arvid Norberg
d2bde64e71
makes sure a torrent doesn't have too many pieces than can be handled. Fixes #61
2008-06-19 11:28:34 +00:00
Arvid Norberg
0241bf78ce
added is_sequential_download to torrent_handle
2008-06-17 08:30:04 +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
3e000a3984
fixed save path updates when moving torrents. Fixes #310
2008-06-15 20:52:46 +00:00
roman_rybalko
5314b639e2
boost detection fixes: now able to launch with boost1.34 and boost1.35
2008-06-13 12:20:55 +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
52f6204288
simplified the disk-io mutexes and made it more efficient. separated the disk io mutex into a buffer mutex, queue mutex and the piece cache mutex.
2008-06-12 04:40:37 +00:00
Arvid Norberg
6e69480176
disk_io_thread fixes. Properly destructs torrent objects while disk io mutex is not locked. Properly flushes disk cache when closing, and aborting read and file check jobs. Fixes #334
2008-06-09 04:46:34 +00:00
Andrew Resch
3ea075f169
Add torrent_resumed alert
2008-06-08 05:14:40 +00:00
Arvid Norberg
a1857f9699
added force_recheck to torrent_handle. Fixes #120
2008-06-07 16:24:56 +00:00
Arvid Norberg
9f5fa96cad
fixed bug related to m_have_piece optimization. Renamed num_pieces() to num_have() to avoid confusion
2008-06-07 14:03:21 +00:00
Arvid Norberg
9d1e77dc88
optimized away torrent::m_have_pieces ( #62 ) and added some documentation on bitfield. The piece picker is now constructed with the torrent, but still freed when turned into a seed
2008-06-07 02:58:28 +00:00
Arvid Norberg
bcc24bf831
added has_incoming to torrent_status per #315
2008-06-05 18:19:03 +00:00
Arvid Norberg
4709d202e1
fixed unicode issue in storage
2008-06-04 07:57:07 +00:00
Arvid Norberg
b4c160e723
fixed bug in web_peer_connection where an incorrect number of bytes would be reported as downloaded
2008-06-03 15:17:09 +00:00
Arvid Norberg
c883f4475c
saves statistics from the last second from peer connections that are disconnected. Partly fixes #339
2008-06-03 05:21:00 +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
fd98434c97
peer list optimization and introduced hard limit on peer list size
2008-05-28 18:25:48 +00:00
Arvid Norberg
3910fe78de
separated file_storage from torrent_info and create_torrent
2008-05-28 08:44:40 +00:00
Arvid Norberg
cf37d8544d
fixed boost version check. Fixes #337
2008-05-28 07:52:25 +00:00
Arvid Norberg
68c31e48dc
replaced vector<bool> with a custom bitfield type
2008-05-28 02:35:02 +00:00
Arvid Norberg
01cb206afc
added missing include file to makefile
2008-05-21 05:54:12 +00:00
Arvid Norberg
dbb625a910
torrent_info fixes. make_torrent now builds
2008-05-20 09:49:40 +00:00
Arvid Norberg
31ab7f9773
boost 1.35 related fixes
2008-05-20 09:45:55 +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
Andrew Resch
aed8f355b0
Make libtorrent build with boost <1.35
2008-05-20 06:03:46 +00:00
Arvid Norberg
5840a50d79
fixed stale state when switching from finished to downloading
2008-05-20 03:21:45 +00:00
Arvid Norberg
07f070868d
factored out to_hex into the escape_string header file
2008-05-19 07:36:04 +00:00
Arvid Norberg
8613554c2a
entry and scrape bug fix
2008-05-19 07:15: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
c5d61667b3
http_connection now supports connecting to all IPs a hostname resolves to, as fallbacks
2008-05-18 22:14:55 +00:00
Arvid Norberg
111f5faecb
upload only extension
2008-05-18 05:59:47 +00:00
Arvid Norberg
b952d85734
fixed error handling and added support for relative http redirects (which aren't allowed by the standard)
2008-05-18 04:48:06 +00:00
Arvid Norberg
7f639e57de
improved error handling with regards to parse_url_components. For trunk, moved that function to its own file
2008-05-17 14:19:34 +00:00
Arvid Norberg
5ec7da07e6
fixes #332
2008-05-17 00:27:26 +00:00
Arvid Norberg
6ab19756a3
lazy_entry fix
2008-05-15 08:23:32 +00:00
Arvid Norberg
0ed87e4c59
updated python binding to match the recently changed torrent_info. reintroduced add_node
2008-05-15 07:37:34 +00:00
Arvid Norberg
1b209ba29c
fixed typo
2008-05-15 07:18:31 +00:00
Arvid Norberg
8ed949c4d5
factored out torrent creation functionality from torrent_info into create_torrent. Modified torrent_info to use lazy_bdecoder for increased performance
2008-05-14 05:29:42 +00:00
Arvid Norberg
a954240aa9
added swap to lazy entry
2008-05-14 05:16:40 +00:00
Arvid Norberg
0de312c80c
ignores UPnP routers that are not configured as routers on the local machine
2008-05-13 04:59:56 +00:00
Arvid Norberg
f259e34f86
peer_connection fix for incoming connections
2008-05-12 10:10:39 +00:00
Arvid Norberg
aa8aee6109
updated IP overhead calculation
2008-05-12 08:22:56 +00:00
Arvid Norberg
574211055c
GeoIP fixes
2008-05-12 07:14:03 +00:00
Arvid Norberg
149fa28586
added constructor to torrent_info that loads a file directly
2008-05-12 06:35:24 +00:00
Arvid Norberg
abb174218b
updated disconnect logic (also in [2279]). Introduced new peer_disconnect_alert used for normal disconnects and peer_error_alert is now used for protocol level errors
2008-05-12 06:05:13 +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
eabe9cad2d
improved plugin support
2008-05-12 03:05:27 +00:00
Arvid Norberg
aa626f1422
logs node uptime and parses it for the DHT
2008-05-10 05:51:58 +00:00
Arvid Norberg
318a455f68
fix missing include
2008-05-08 22:07:13 +00:00
Arvid Norberg
bbf9c83edc
initial support for icmp errors in the DHT
2008-05-08 00:22:17 +00:00
Arvid Norberg
9429ca4b1f
replaced seed cycles with seed rank
2008-05-06 18:03:41 +00:00
Arvid Norberg
4df46a6e5e
switched from floats to integers in stat_channel history, to avoid rounding errors
2008-05-06 16:35:15 +00:00
Arvid Norberg
f7ef315438
takes IP and TCP headers into account for rate limits as well
2008-05-06 16:15:31 +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
d15573ecc2
disk receive buffer cleanup
2008-05-05 06:25:22 +00:00
Arvid Norberg
7388144ec7
refactored stats class to be extensible with more channels
2008-05-04 17:57:06 +00:00
Arvid Norberg
010d3b6e75
windows fix
2008-05-04 16:10:13 +00:00
Arvid Norberg
c7e6c04705
switched over to asio from boost-1.35
2008-05-03 16:05:42 +00:00
Arvid Norberg
f3d0eb3c11
fixed boost-1.35 build
2008-05-01 16:31:19 +00:00
Arvid Norberg
c3b60f1b8f
modified get_default_gateway to not take an interface
2008-04-28 02:20:40 +00:00
Arvid Norberg
c2f7fb0fb4
added enum_routes to dump routing table
2008-04-28 00:20:59 +00:00
Arvid Norberg
b983b98f6a
fix for mingw
2008-04-27 23:21:04 +00:00
Arvid Norberg
0d818da41a
bumped version number
2008-04-24 20:41:44 +00:00
Arvid Norberg
00b935150a
fix for debug iterators
2008-04-24 17:09:26 +00:00
Arvid Norberg
4d59d9eabc
fix build with DHT disabled
2008-04-24 16:57:22 +00:00
Arvid Norberg
228e225489
scans at most 300 peers when finding a connect candidate. Supposedly fixes cpu spikes on large swarms
2008-04-24 07:49:23 +00:00
Arvid Norberg
c043d4b21d
initial support for queuing
2008-04-24 03:28:48 +00:00
Arvid Norberg
fc7dd2c5eb
tracker logger fix
2008-04-24 01:35: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
Arvid Norberg
4f132ec568
added GeoIP sources to make files
2008-04-22 00:59:56 +00:00
Arvid Norberg
9a434a919f
some more ASNum additions
2008-04-22 00:05:23 +00:00
Arvid Norberg
39eaf766fa
lazy_bdecode fixes
2008-04-20 03:18:49 +00:00
Arvid Norberg
72176a9256
lazy bdecoder additions and fixes
2008-04-19 03:00:07 +00:00
Arvid Norberg
755e50bb12
added active_time, seeding_time, all_time_upload and all_time_download to torrent_status. Also updated docs with some missing entries in torrent_status
2008-04-16 06:31:05 +00:00
Arvid Norberg
748a66c343
improvements to lazy_bdecode
2008-04-13 22:34:04 +00:00
Arvid Norberg
3fea2080fd
added an asynchronous save_resume_data to make it easier to synchronize with the disk IO thread
2008-04-13 18:54:36 +00:00
Arvid Norberg
6639f72804
if priorities are changed so that the torrent changes state to be finished, a torrent_finished_alert is generated now. Fixes #305
2008-04-13 07:39:37 +00:00
Arvid Norberg
17c4257cce
added get_full_peer_list to retrieve all the peers known for a swarm
2008-04-13 06:32:48 +00:00
Arvid Norberg
a3e7124614
added out stream operator to lazy_entry
2008-04-13 05:19:10 +00:00
Andrew Resch
ca872a0e82
Revert last.
2008-04-13 02:47:41 +00:00
Andrew Resch
d825c1d5bd
Add torrent_resumed torrent alert.
2008-04-13 02:34:18 +00:00
Andrew Resch
31bd3b1550
Expose torrent_handle::is_finished()
2008-04-13 02:15:56 +00:00
Arvid Norberg
d4cfa126aa
storage fixes
2008-04-12 22:08:07 +00:00
Arvid Norberg
a70789872e
added string length to high performance bdecoder
2008-04-12 01:58:55 +00:00
Arvid Norberg
42f55adcce
support for country lookup through GeoIP
2008-04-11 08:46:43 +00:00
Arvid Norberg
b300c7f835
added high performance bdecoder code
2008-04-11 03:41:09 +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
5f35d170b0
disk io thread cleanup (all read operations are now read into disk buffers, no custom buffers)
2008-04-10 09:11:54 +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
642768bc24
storage cleanup
2008-04-09 01:11:16 +00:00
Arvid Norberg
96f6de9d10
added missing TORRENT_EXPORT statements (to fix shared library build)
2008-04-07 03:03:34 +00:00
Arvid Norberg
89a9a25197
exception fixes in torrent
2008-04-07 02:51:21 +00:00
Arvid Norberg
2fe729c9f5
removed dependencies on exceptions from policy
2008-04-07 01:29:21 +00:00
Arvid Norberg
d10205057e
port mapping update
2008-04-06 23:18:35 +00:00
Arvid Norberg
d8a5f6cd66
updated makefiles for asio 1.0
2008-04-06 20:17:08 +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
35fd9aec61
msvc build fixes and warning fixes
2008-04-05 21:18:27 +00:00
Arvid Norberg
7ebdc27779
fixed trailing backslash
2008-04-05 06:13:06 +00:00
Arvid Norberg
e9e12b5531
updated makefile to include the latest asio headers
2008-04-05 06:05:36 +00:00
Arvid Norberg
57d75e120a
initial support for GeoIP (only AS mappings for now)
2008-04-05 04:53:22 +00:00
Arvid Norberg
0fcb204128
added peak rates to peer_info
2008-04-03 06:11:21 +00:00
Arvid Norberg
cab106adad
removed incorrect assert in bandwidth manager
2008-04-03 04:31:31 +00:00
Arvid Norberg
4161be867e
removed dht ping from peer_from_tracker. in trunk: implemented a rate limited DHT ping (once a second per torrent) and space optimized the peer structure
2008-04-01 17:38:19 +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
a9bb9023fb
fixed build with logging
2008-03-30 18:31:30 +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
2014e312b1
exposed connection_candidates in torrent_status and made a small optimization to not attempt to connect peers on swarms that don't have any connect candidates
2008-03-29 18:47:24 +00:00
Arvid Norberg
483da2483e
python binding update
2008-03-28 21:37:35 +00:00
Arvid Norberg
5cad17143d
updated udp_socket error handling
2008-03-25 04:46:18 +00:00
Arvid Norberg
1d8edc0722
fixed race condition in dht
2008-03-24 04:38:43 +00:00
Arvid Norberg
211ae62d33
fixes #295
2008-03-24 02:19:47 +00:00
Arvid Norberg
95310549b9
silence msvc warning
2008-03-21 09:04:24 +00:00
Arvid Norberg
70f822b4bd
silence msvc warning
2008-03-21 09:03:25 +00:00
Arvid Norberg
fece6e9300
fixed #289 in trunk, 0.12 and 0.13
2008-03-19 22:44:55 +00:00
Arvid Norberg
f3f90c1a0f
bandwidth limiter assertion fix
2008-03-16 18:09:56 +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
026e98222b
fixed warning
2008-03-16 05:01:07 +00:00
Arvid Norberg
8132c6aad6
added option to control TOS byte in peer traffic
2008-03-12 16:58:23 +00:00
Arvid Norberg
cd65fb8b0c
added priority to connection queue. trackers and upnp connections have higher priority than peers
2008-03-12 07:44:27 +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
e86bac9c50
updated makefiles to reflect recent asio changes
2008-03-04 06:27:04 +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
cf5c9344ab
made peer connection order depend on ones external IP or be random (if we don't know our external IP). Should fix #281
2008-02-28 03:09:34 +00:00
Arvid Norberg
c689c0b5fc
replaced deque with list in disk_io_thread
2008-02-26 20:08:33 +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
9f44c577d7
updated file_win and file_pool error handling
2008-02-25 04:41:21 +00:00
Arvid Norberg
1d1398ed7f
read cache fix
2008-02-24 23:14:10 +00:00
Arvid Norberg
0e3eddf8e8
lower default connection speed in debug mode
2008-02-22 07:41:05 +00:00
Arvid Norberg
ef9ef674d5
added read cache. Not fully configurable yet
2008-02-22 04:11:04 +00:00
Arvid Norberg
333839c9b4
piece picker update
2008-02-18 03:07:14 +00:00
Arvid Norberg
799dd70c4e
factored out OS detection code and added kfreebsd support
2008-02-18 00:36:17 +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
af6c0a73c5
fixed dht asserts
2008-02-10 02:26:45 +00:00
Arvid Norberg
6c552db68e
added disk cache expiration
2008-02-10 00:58:25 +00:00
Arvid Norberg
cecd0dfcd2
added rtt estimation for outgoing connections
2008-02-09 22:42:56 +00:00
Arvid Norberg
ea7253c575
increased default cache size to 8 MB
2008-02-09 21:09:29 +00:00
Arvid Norberg
99eed299cd
asserts in dht
2008-02-09 21:04:24 +00:00
Arvid Norberg
8cf0510144
added disk cache for write operations
2008-02-08 10:22:05 +00:00
Arvid Norberg
a53473a65d
added new logging mode to log peer errors
2008-02-07 07:09:52 +00:00
Arvid Norberg
92f4947bbe
full proxy support for udp-trackers, and more reliable udp tracker code
2008-02-05 06:32:10 +00:00
Arvid Norberg
c798ab30e1
rewrote the piece picker to be more cpu and memory efficient. replaces the concept of sequential-download-threshold with just a sequential download settings
2008-01-31 17:52:29 +00:00
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