Arvid Norberg
|
a6ba48a60a
|
removed exception usage in dht implementation and peer_connection
|
2008-10-21 17:10:11 +00:00 |
Arvid Norberg
|
41d5abf0d8
|
exception related fixes. Avoiding functions that may throw in places where exceptions shouldn't be thrown
|
2008-10-21 08:45:42 +00:00 |
Arvid Norberg
|
cfe029d58f
|
updated seed rank to lower priority for finished, but not seeding torrents
|
2008-10-19 08:05:36 +00:00 |
Arvid Norberg
|
535f668c5d
|
simplified the file interface
|
2008-10-19 05:03:17 +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
|
d0fc5fee2b
|
fixed assert in piece_picker
|
2008-10-18 22:29:56 +00:00 |
Arvid Norberg
|
8b835bf75f
|
fix to faster unchoke a new peer if an unchoked peer becomes uninterested
|
2008-10-18 22:12:05 +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
|
68981fc3fd
|
removed unused references to iostream and date-time lib in Makefile.am
|
2008-10-18 07:11:00 +00:00 |
Arvid Norberg
|
8995edead0
|
policy iterator fix
|
2008-10-17 07:32:46 +00:00 |
Arvid Norberg
|
f5f03ff681
|
improved seeding of files with small pieces to avoid swithing back and forth between unchoke sets
|
2008-10-17 04:33:22 +00:00 |
Arvid Norberg
|
c04183d960
|
cleaned up save_resume_data
|
2008-10-17 01:56:36 +00:00 |
Arvid Norberg
|
0368e444af
|
fix to torrent_info constructor to not try to access 0 pointer when loading a 0 size torrent file
|
2008-10-17 01:46:06 +00:00 |
Arvid Norberg
|
032f6e4d55
|
removed expensive invariant check
|
2008-10-16 07:11:57 +00:00 |
Arvid Norberg
|
c0df461296
|
relaxed file timestamp requirements to work better with FAT volumes
|
2008-10-15 20:19:03 +00:00 |
Arvid Norberg
|
16d56eaee6
|
clears torrent stats when paused
|
2008-10-15 17:31:20 +00:00 |
Arvid Norberg
|
2d1b72628e
|
fix for unchoke_compare
|
2008-10-15 04:52:07 +00:00 |
Arvid Norberg
|
ad4d80cc6b
|
removed commented out code
|
2008-10-15 02:21:41 +00:00 |
Arvid Norberg
|
9152bc8712
|
fix to peer_connection::unchoke_compare
|
2008-10-15 02:18:59 +00:00 |
Arvid Norberg
|
c7b1977431
|
uses http 1.0 for soap traffic to dodge chunked transfer encodings
|
2008-10-14 08:07:27 +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
|
9a5e261c64
|
Fixed UPnP bug where the port and host would be re-used from the xml url when connecting to the control url
|
2008-10-14 07:19:46 +00:00 |
Arvid Norberg
|
f0f285ae63
|
fixed bug where broadcast socket would not send messages on interfaces with addresses in local network ranges
|
2008-10-14 04:56:42 +00:00 |
Arvid Norberg
|
f0cd0c152c
|
removed incorrect assert from recent check-in
|
2008-10-14 03:01:19 +00:00 |
Arvid Norberg
|
b8f58f149e
|
made UPnP not give up as soon. To give routers some time to send a NOTIFY message
|
2008-10-14 02:41:22 +00:00 |
Arvid Norberg
|
fdadccf7a2
|
asserts for unchoke slot handling
|
2008-10-14 02:03:54 +00:00 |
Arvid Norberg
|
cb1fce0d62
|
fix to immediately unchoke another peer if an unchoked peer is disconnected
|
2008-10-14 01:00:05 +00:00 |
Arvid Norberg
|
c709cd28a8
|
fixes seeding behavior to avoid flipping unchoke slots back and forth too often
|
2008-10-14 00:57:58 +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
|
ef48097421
|
fix for #389
|
2008-10-12 20:36:22 +00:00 |
Arvid Norberg
|
62e365225b
|
made some moer invariant checks count as expensive
|
2008-10-10 07:08:46 +00:00 |
Arvid Norberg
|
b417a03877
|
removed unnecessary invariant check
|
2008-10-10 05:38:19 +00:00 |
Arvid Norberg
|
8499fd2fe2
|
moved some invariant checks into 'full-invariant-checks' builds
|
2008-10-10 05:25:55 +00:00 |
Arvid Norberg
|
e109b64b27
|
fixed bug when contacting an HTTP/1.0 web server that used gzip compression
|
2008-10-10 04:19:56 +00:00 |
Arvid Norberg
|
13554cbd3b
|
transfer stats assert fix
|
2008-10-09 03:33:53 +00:00 |
Arvid Norberg
|
68a89507bc
|
mutex fix for dht status reporting
|
2008-10-09 03:33:14 +00:00 |
Arvid Norberg
|
8e206c7d0d
|
attempt to fix bug in storage on windows where ENOENT was not properly caught
|
2008-10-07 09:24:30 +00:00 |
Arvid Norberg
|
3fbdded9f3
|
typo
|
2008-10-07 07:12:32 +00:00 |
Arvid Norberg
|
75aac14855
|
fixed typo
|
2008-10-07 06:42:25 +00:00 |
Arvid Norberg
|
3d3a8cca6b
|
fixed std::max usage in storage (fixes msvc build)
|
2008-10-07 05:53:38 +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
|
468ec140ac
|
fixed invalid invariant check
|
2008-10-07 03:57:18 +00:00 |
Arvid Norberg
|
d06fea3d6c
|
fix to handle 0-size piece response without asserting
|
2008-10-06 03:23:47 +00:00 |
Arvid Norberg
|
ccd75006d4
|
fixed failing invariant check caused by a life-time issue in debug mode
|
2008-10-05 23:36:50 +00:00 |
Arvid Norberg
|
f6a1e467a8
|
marked expensive invariant check to only be included in full checks in piece-picker
|
2008-10-05 23:28:57 +00:00 |
Arvid Norberg
|
7733f74d7a
|
fixed invariant check in peer_connection
|
2008-10-05 22:09:33 +00:00 |
Arvid Norberg
|
5f6351146a
|
removed assert that could cause dead-lock in debug mode
|
2008-10-05 19:47:55 +00:00 |
Arvid Norberg
|
3144767632
|
fixed buffer overrun when calling get_download_queue
|
2008-10-05 07:23:46 +00:00 |
Arvid Norberg
|
7f0bfa37b9
|
fix for loading 0-size torrent files. Fixes #383
|
2008-10-05 04:52:01 +00:00 |
Arvid Norberg
|
d4c5d5835a
|
another state fix where mutliple torrent_finished_alerts could be generated
|
2008-10-05 04:44:29 +00:00 |
Arvid Norberg
|
8f665e949f
|
fixed rare bug where a torrent could be put back into downloading state when finishing checking files if it already finished by then
|
2008-10-05 01:44:57 +00:00 |
Arvid Norberg
|
528a009f7f
|
removed date-time and iostream from makefiles
|
2008-10-04 07:46:56 +00:00 |
Arvid Norberg
|
7157516eba
|
fixed boost-compatibility
|
2008-10-04 06:56:51 +00:00 |
Arvid Norberg
|
d4c206841b
|
added support for bitcomet padding files. simplified storage read/write code.
|
2008-10-03 05:49:41 +00:00 |
Arvid Norberg
|
dd40d24708
|
more stats assert fixes
|
2008-10-01 15:19:31 +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
|
ba28449765
|
rename_file now creates missing directories before renaming
|
2008-09-30 23:55:45 +00:00 |
Arvid Norberg
|
ef42e8f77c
|
fixed rename_file to work when the file hasn't been created yet. Fixed error reporting when rename_file fails. Updates the file in the torrent_handle when filename is updated
|
2008-09-30 23:37:42 +00:00 |
Arvid Norberg
|
dc3c5d0bd7
|
more fixes to not trigger the stat asserts
|
2008-09-30 18:52:53 +00:00 |
Arvid Norberg
|
0f6ec06e12
|
fixed race condition in invariant check in disk io thread (only affected debug builds)
|
2008-09-30 01:16:19 +00:00 |
Arvid Norberg
|
195521db65
|
prevent new connections when shutting down
|
2008-09-30 01:14:27 +00:00 |
Arvid Norberg
|
d2bbe2cc4a
|
fixed bug in error alert from http_tracker_connection
|
2008-09-28 07:26:05 +00:00 |
Arvid Norberg
|
317d97b316
|
config fix for unicode builds on windows
|
2008-09-27 19:49:31 +00:00 |
Arvid Norberg
|
8989699e1e
|
fixed invariant check when pausing a torrent
|
2008-09-27 04:58:40 +00:00 |
Arvid Norberg
|
dabaff9980
|
fixed bug in recent udp_socket fix
|
2008-09-26 17:42:39 +00:00 |
Arvid Norberg
|
47c476dc0a
|
include TCP handshake overhead
|
2008-09-26 06:10:21 +00:00 |
Arvid Norberg
|
d4e0ea6c1e
|
added assert to make sure #365 doesn't happen
|
2008-09-25 22:08:18 +00:00 |
Andrew Resch
|
4189e0b697
|
add peer_info::progress
|
2008-09-25 20:39:06 +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
|
00415608f6
|
added assert in policy
|
2008-09-25 18:35:28 +00:00 |
Arvid Norberg
|
bb674134e3
|
fixed bind_port for outgoing peer connections
|
2008-09-25 07:40:55 +00:00 |
Arvid Norberg
|
92bac424eb
|
fixed typecast typo in file.cpp
|
2008-09-25 00:16:41 +00:00 |
Arvid Norberg
|
61af2370f3
|
fixed release build of udp_socket
|
2008-09-24 17:25:45 +00:00 |
Arvid Norberg
|
6d97d562f9
|
added another constructor to create_torrent that copies a torrent_info.
|
2008-09-24 17:05:12 +00:00 |
Arvid Norberg
|
0ae891118b
|
fixed stats reporting in bt_peer_connection
|
2008-09-24 02:38:20 +00:00 |
Arvid Norberg
|
80e9e8d1cf
|
changed torrent::set_metadata() to reduce code duplication in metadata extensions. Exposed torrent_handle::set_metadata() to the public interface
|
2008-09-24 02:32:33 +00:00 |
Arvid Norberg
|
df5e261ce8
|
fixed resume data loading for paused state
|
2008-09-24 02:29:24 +00:00 |
Arvid Norberg
|
2e0d0046d2
|
made torrent::replace_trackers() start or stop announcing depending on if trackers were added or cleared
|
2008-09-24 02:22:12 +00:00 |
Arvid Norberg
|
bd44d730cc
|
fixed bug in nat-pmp where it could access an out-of-bound vector element on shutdown
|
2008-09-24 02:20:13 +00:00 |
Arvid Norberg
|
a36da15c29
|
saves sequential download in fastresume data
|
2008-09-23 03:52:49 +00:00 |
Arvid Norberg
|
c0c65d8ee6
|
fixed bug in read_fast_resume regarding auto_managed flag
|
2008-09-23 03:21:35 +00:00 |
Arvid Norberg
|
eaa071818e
|
fixed typo in previous patch
|
2008-09-23 03:19:08 +00:00 |
Arvid Norberg
|
74593d6014
|
fixed deadlock in udp_socket
|
2008-09-23 03:09:08 +00:00 |
Arvid Norberg
|
ba8163ca9c
|
fixed bug in udp_socket when the sockets own lifetime was dependent on the callback
|
2008-09-22 23:43:21 +00:00 |
Arvid Norberg
|
67bed1407f
|
fixed bug in broadcast socket (made local service discovery not work)
|
2008-09-22 17:43:57 +00:00 |
Arvid Norberg
|
791a1f4365
|
saves trackers and web seeds in fastresume data. Fixes #369
|
2008-09-22 17:39:18 +00:00 |
Arvid Norberg
|
8189262182
|
cosmetic improvement when printing bdecoded structures
|
2008-09-22 17:37:12 +00:00 |
Arvid Norberg
|
ca4ab436d0
|
prioritize partials once they reach a certain threshold, to keep them from growing
|
2008-09-22 00:41:36 +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
|
13b343c1af
|
added assertions that the stats is updated properly when receiving and sending bytes on peer_connections
|
2008-09-21 17:12:26 +00:00 |
Arvid Norberg
|
8ffc345308
|
fixed crash when add_torrent was fed with invalid resume data
|
2008-09-21 02:08:04 +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
|
98f9d5826c
|
fixed busted is_any check for 'ipv6' key in extended handshake
|
2008-09-20 16:21:16 +00:00 |
Arvid Norberg
|
e46f2396cf
|
fixes bencode type check on tracker responses. Might fix #398
|
2008-09-20 15:25:46 +00:00 |
Arvid Norberg
|
97f107a7fd
|
fixed bug in verify_fast_resume. Fixes #397
|
2008-09-20 06:02:40 +00:00 |
Arvid Norberg
|
f3d542fb2c
|
fixed inconsistent upload_only and seed in some cases when running a metadata-less torrent
|
2008-09-19 23:02:45 +00:00 |
Arvid Norberg
|
064d93b935
|
optimization for files with prioritiy 0
|
2008-09-19 19:46:04 +00:00 |
Arvid Norberg
|
67f1242836
|
added mutex to udp_socket and posts the callback instead of calling it directly
|
2008-09-19 17:31:16 +00:00 |
Arvid Norberg
|
656ff6d5f2
|
fixed piece_picker to not pick blocks from a piece with priority 0 when there already are requests to the piece
|
2008-09-19 17:07:19 +00:00 |
Arvid Norberg
|
eb89269b6a
|
update_interest fix for torrents without metadata
|
2008-09-19 07:14:24 +00:00 |
Arvid Norberg
|
fbec4261cd
|
fixed assert in piece_picker
|
2008-09-19 06:46:58 +00:00 |
Arvid Norberg
|
e85cb90652
|
fixed assert in peer_connection
|
2008-09-19 02:37:05 +00:00 |
Arvid Norberg
|
e7df553fdd
|
fixed race condition when calling a function that re-evaluates the interested flags on peers (such as prioritize files) right after the metadata is received, but before the connections are initialized
|
2008-09-18 20:17:49 +00:00 |
Arvid Norberg
|
f14e76a3f9
|
fixed typo in previous iterator fix
|
2008-09-18 17:53:44 +00:00 |
Arvid Norberg
|
cd1301b1c9
|
fix for invalid iterators when changing piece priorities causes peers to disconnect
|
2008-09-17 23:14:59 +00:00 |
Arvid Norberg
|
26dea3c222
|
fixed stats miscount when deleting files
|
2008-09-17 02:29:05 +00:00 |
Arvid Norberg
|
a533bf817c
|
properly reports disk io errors when hashing pieces. made the partial_hash.log easier to enable/disable
|
2008-09-16 23:32:27 +00:00 |
Arvid Norberg
|
53c408212d
|
nicer fix for debug iterators
|
2008-09-15 16:21:03 +00:00 |
Arvid Norberg
|
88a7e445ad
|
fixed decrement of start-of-sequence iterator in invariant_check code. Fixes debug-iterator assert
|
2008-09-15 15:07:46 +00:00 |
Arvid Norberg
|
658eef82a5
|
get rid of msvc warning
|
2008-09-15 13:58:38 +00:00 |
Arvid Norberg
|
166f761df3
|
fixed DHT bug where requests that timed out would be treated as transaction_id overflows and would slow down DHT lookups considerably.
|
2008-09-15 05:05:26 +00:00 |
Arvid Norberg
|
c087c363be
|
removed left over from debugging
|
2008-09-09 19:47:31 +00:00 |
Arvid Norberg
|
3077fdcb6a
|
fix crash when tracker connections fails in the constructor (used to be the case for scrape when there were no url transform from announce to scrape)
|
2008-09-07 10:03:59 +00:00 |
Arvid Norberg
|
a61c1ee01d
|
more disconnect handling for upload-only
|
2008-09-07 10:00:58 +00:00 |
Arvid Norberg
|
cc67830faf
|
support max_upload_slots of 0. #395
|
2008-09-06 21:16:04 +00:00 |
Arvid Norberg
|
435bc9af71
|
removed invalid assert
|
2008-09-06 21:09:01 +00:00 |
Arvid Norberg
|
41808f8742
|
big change to improve piece picker. Better end-game mode. More options on which pieces to pick.
|
2008-09-06 21:04:57 +00:00 |
Arvid Norberg
|
7f143791d5
|
added get_storage_impl() to torrent_handle
|
2008-09-04 16:20:19 +00:00 |
Arvid Norberg
|
c7c0974d3f
|
fixed bugs in verbose logging
|
2008-09-04 14:39:02 +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
|
d179280da2
|
fixed off-by-one error when receiving a piece which skipped a bunch of requests
|
2008-09-01 17:41:13 +00:00 |
Arvid Norberg
|
37147f99c0
|
fixes bug in kademlia implementation when nodes are unreachable
|
2008-08-29 23:00:57 +00:00 |
Arvid Norberg
|
aedc92cb24
|
fix to announce with DHT for torrents without metadata
|
2008-08-29 22:58:47 +00:00 |
Arvid Norberg
|
92ed7fb364
|
fixed metadata extension issues
|
2008-08-29 17:21:56 +00:00 |
Arvid Norberg
|
d4dd2d2a31
|
added verbose logging to metadata transfer plugin
|
2008-08-29 13:27:00 +00:00 |
Arvid Norberg
|
e670b2fa7f
|
fixed indentation
|
2008-08-29 00:44:55 +00:00 |
Arvid Norberg
|
9b38724417
|
made dump torrent create magnet links
|
2008-08-27 18:44:35 +00:00 |
Arvid Norberg
|
9c59d1a308
|
fixed bug in last check-in
|
2008-08-27 15:29:42 +00:00 |
Arvid Norberg
|
e2ae0a97e2
|
fix for tracker-less torrents (they didn't announce with the tracker)
|
2008-08-27 15:15:41 +00:00 |
Arvid Norberg
|
238dcea91d
|
fixed missing 'set_error' when write failed
|
2008-08-26 23:10:42 +00:00 |
Arvid Norberg
|
af62dc1417
|
fixed crash when calling force_recheck on seeding torrent
|
2008-08-26 21:35:33 +00:00 |
Arvid Norberg
|
e9045cc1df
|
fixes bug where priorities where lost when force-rechecking.
|
2008-08-25 22:32:50 +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
|
7cdc7b2912
|
fixed typo
|
2008-08-25 21:10:13 +00:00 |
Arvid Norberg
|
f407c6d24e
|
fixed bug in piece time-out code. Fixes #388
|
2008-08-25 15:25:46 +00:00 |
Arvid Norberg
|
ae60562caf
|
fix isprint() build issue with msvc
|
2008-08-24 08:41:48 +00:00 |
Arvid Norberg
|
a22f6b6359
|
fixed type cast for std::isprint, to avoid assert
|
2008-08-21 13:44:30 +00:00 |
Arvid Norberg
|
5a922dd3ef
|
replaced std::isprint with one that is not dependent on locale. Fixes #384
|
2008-08-21 13:41:27 +00:00 |
Arvid Norberg
|
71db0f32db
|
removed incorrect assert. Fixes #309
|
2008-08-21 11:54:38 +00:00 |
Arvid Norberg
|
635341f1e4
|
fixed the definition of torrent_handle::is_paused() to be consistent with torrent_status::paused and made it clear in the documentation
|
2008-08-21 11:24:24 +00:00 |
Arvid Norberg
|
e58485822b
|
optimized encryption
|
2008-08-20 23:05:12 +00:00 |
Arvid Norberg
|
42b5cad1f8
|
attempt to fix NAT-PMP hang on shutdown
|
2008-08-20 08:34:32 +00:00 |
Arvid Norberg
|
b72badd1b1
|
added test for checking files when some files are missing
|
2008-08-20 08:07:31 +00:00 |
Arvid Norberg
|
0454fb77d7
|
fixed bug where is_sequential_download would return false when it should be true
|
2008-08-19 16:04:01 +00:00 |
Arvid Norberg
|
37389e4fe4
|
added test to measure peak download rate and introduced performance warning alert when disk buffer limit and request limit are reached
|
2008-08-19 15:04:14 +00:00 |
Arvid Norberg
|
a134908bac
|
fixed warnings and uninitialized variable
|
2008-08-19 14:53:50 +00:00 |