Commit Graph

3867 Commits

Author SHA1 Message Date
Arvid Norberg cafbf2ca1d more work on minimizing shared object export symbol table 2012-03-20 03:53:07 +00:00
Arvid Norberg 619c375528 don't inline large functions 2012-03-19 06:06:52 +00:00
Arvid Norberg 62fef3cba0 fixed build configuration test in session.cpp 2012-03-19 02:43:06 +00:00
Arvid Norberg f4d0d90f20 fixed typo 2012-03-19 00:30:02 +00:00
Arvid Norberg a2521bd23c fix a bunch of issues to properly support dynamic linking of libtorrent with visibility=hidden. Still requires a small patch to boost 2012-03-18 23:31:04 +00:00
Arvid Norberg 8213814102 DHT fix 2012-03-17 19:27:57 +00:00
Arvid Norberg af09935b87 some windows path fixes 2012-03-17 19:06:11 +00:00
Arvid Norberg 8a4685e83b fixed some typos 2012-03-17 17:48:22 +00:00
Arvid Norberg 2ec6a53c71 fix openssl build 2012-03-16 07:45:27 +00:00
Arvid Norberg 7b1a441aeb attempt to make shared library builds to work with visibility=hidden 2012-03-15 06:08:08 +00:00
Arvid Norberg 250f1645b3 fix windows directory separator issue on windows with UNC paths 2012-03-13 04:50:12 +00:00
Arvid Norberg fc4f4a9753 fix non-unc build 2012-03-13 04:44:40 +00:00
Arvid Norberg df2e891a2d set uTP target delay to 100 ms. expose setting for packet loss multiplier for cwnd 2012-03-11 05:46:15 +00:00
Arvid Norberg d8b221c795 improve session stats logging and parsing 2012-03-11 05:35:29 +00:00
Arvid Norberg 671694959f log peers that have a full send buffer 2012-03-09 17:03:10 +00:00
Arvid Norberg 3442534085 fixed no-deprecate build 2012-03-09 06:34:23 +00:00
Arvid Norberg b58a96d76b log stats of incoming piece requests 2012-03-09 06:24:01 +00:00
Arvid Norberg e08718428e revert mistake 2012-03-09 02:18:46 +00:00
Arvid Norberg 9288f08826 fix stats logging precision 2012-03-09 01:22:45 +00:00
Arvid Norberg ce3405c0ce don't prevent sending bytes just because the peer was waiting on the disk 2012-03-09 01:19:30 +00:00
Arvid Norberg 97b4012685 and actually fix it 2012-03-09 00:23:08 +00:00
Arvid Norberg f49c6d2d52 fix non UNC paths build 2012-03-09 00:14:30 +00:00
Arvid Norberg 341967dab7 improve magnet link support. in RSS feeds for instance. Parsing of magnet links was factored out and moved to the proper place, in session_impl::add_torrent 2012-03-08 09:54:44 +00:00
Arvid Norberg 9bd40e950b add send_buffer_low_watermark in an attempt to improve seed ramp-up time 2012-03-07 02:59:50 +00:00
Arvid Norberg 02b0e0ead3 add some more stats logging 2012-03-06 10:34:18 +00:00
Arvid Norberg 57eb57ac78 move trust point and hashfailure counter logic to where they belong 2012-03-06 07:35:56 +00:00
Arvid Norberg 5897235f51 fix recent simplification of connection attempt distribution 2012-03-06 07:34:02 +00:00
Arvid Norberg ea59a9be22 simplify connection attempt distribution logic to not lower the connection rate with a downloading torrent among seeding ones 2012-03-05 10:42:25 +00:00
Arvid Norberg 8f3c3de1e2 add incoming requests to stats logging 2012-03-05 10:05:20 +00:00
Arvid Norberg e2d46b5563 add performance warning when hitting the file descriptor limit. Log the total number of peers, including half-open TCP connections 2012-03-04 11:18:27 +00:00
Arvid Norberg 769c985e78 report ENOFILE to peer connection disconnect function when running out of file descriptors 2012-03-04 10:54:55 +00:00
Arvid Norberg 0d29dbbfbe don't add the UNC path prefix to network paths 2012-03-04 10:54:10 +00:00
Arvid Norberg 92fba05040 attempt to fix unc paths on windows 2012-03-03 21:51:15 +00:00
Arvid Norberg 5a8037dba2 added performance alert for address-in-use errors 2012-03-03 02:29:37 +00:00
Arvid Norberg ccf9c5a0fd log more stats 2012-03-02 08:52:54 +00:00
Arvid Norberg 1bd4d1633c added assert in torrent::state_updated() to make sure it's not called from the constructor 2012-03-01 23:18:32 +00:00
Arvid Norberg 8d754b9674 deprecate torrent_handle::super_seeding() and move it into torrent_status 2012-03-01 09:01:48 +00:00
Arvid Norberg 9cd5c6cc2f don't require BOOST_ASIO_ENABLE_CANCELIO on non-windows platforms 2012-03-01 08:27:22 +00:00
Arvid Norberg 30d02f6b7a fix potential integer overflows and a typo in boost_version conditional 2012-02-27 06:26:11 +00:00
Arvid Norberg c168f9e1df fixed assert 2012-02-26 01:36:29 +00:00
Arvid Norberg fdc6d3722b fix boost version condition for new asio ssl features 2012-02-26 00:01:53 +00:00
Arvid Norberg 886364118c tweak connection points in deficit round-robin of outgoing connection attempts balancing between torrents 2012-02-25 10:57:36 +00:00
Arvid Norberg a849d73602 add runtime check for size < 0 to file_storage::add_file 2012-02-25 10:49:50 +00:00
Arvid Norberg b5bf19c07b fix openssl build with boost-1.46 2012-02-25 08:31:25 +00:00
Arvid Norberg 3ef9190b01 fix export for settings_map symbol for python binding 2012-02-25 08:02:52 +00:00
Arvid Norberg f221b3d931 export session_settings_map and fix rss issue in client_test 2012-02-24 16:11:31 +00:00
Arvid Norberg ad779a569c fix windows build 2012-02-23 09:13:18 +00:00
Arvid Norberg 14287b8a7b use UNC paths on windows by default 2012-02-23 06:46:23 +00:00
Arvid Norberg 6c395cedee fix build for boost < 1.47 2012-02-23 04:32:50 +00:00
Arvid Norberg f1365a7a52 fail properly if NtSetFileInformation cannot be loaded 2012-02-22 09:29:07 +00:00
Arvid Norberg 28e74a79b7 RSS fixes (exponential back-off), handling feed errors with retries 2012-02-22 08:26:42 +00:00
Arvid Norberg 6627ae86d6 fixed integer overflow in file_storage::map_file 2012-02-21 07:43:25 +00:00
Arvid Norberg e071bf113e fixed connection_queue invariant check issue on shutdown 2012-02-21 06:47:48 +00:00
Arvid Norberg bcf1d6eee8 fixed upload_mode assert 2012-02-21 06:46:36 +00:00
Arvid Norberg 5e4b8f785d add missing state update calls when queue position changes 2012-02-21 05:59:38 +00:00
Arvid Norberg 8bb6635c94 improved rss unit test and fixed one incompatibility. added feature to save which feed items have been added, in order to not re-add them 2012-02-21 03:14:54 +00:00
Arvid Norberg d24a2e30fc rss feed fixes 2012-02-20 23:44:34 +00:00
Arvid Norberg 75fce84ce4 added unit test for RSS feeds and fixed a parsing bug 2012-02-20 07:51:36 +00:00
Arvid Norberg 079a8f8314 ignore failures when asking for local address of sockets and parsing a string into an IP address 2012-02-20 04:13:39 +00:00
Arvid Norberg 065d75b02d fix bug in file storage unit test, and the bug causing mapped files to not be restored correctly from resume files 2012-02-19 19:00:52 +00:00
Arvid Norberg 92992c7eac fix upnp snprintf issue 2012-02-18 20:35:06 +00:00
Arvid Norberg 5a23d04143 fix some clang warnings 2012-02-18 08:23:48 +00:00
Arvid Norberg cde80acbde fixed UDP socket error handling on windows 2012-02-17 18:23:47 +00:00
Arvid Norberg d9db8e20f5 fix another pad file corner case 2012-02-17 07:19:54 +00:00
Arvid Norberg 1244ae8894 remove left-over debug printf from bdecoder 2012-02-17 06:52:08 +00:00
Arvid Norberg b1c59f37c0 fix assert_fail export 2012-02-16 18:24:53 +00:00
Arvid Norberg a9ee05bb25 export assert_fail 2012-02-16 10:38:43 +00:00
Arvid Norberg d5f51f60ab fix issue introduced with updated disconnect-redundant logic for metadata-only seeding 2012-02-16 10:06:21 +00:00
Arvid Norberg d7d4da5b80 fix the fix 2012-02-16 08:51:14 +00:00
Arvid Norberg 71c7956645 fix warnings 2012-02-16 06:12:36 +00:00
Arvid Norberg 91df5d1894 fix out-of-bounds memory access in to_string 2012-02-16 03:54:56 +00:00
Arvid Norberg 35ea214124 fix off-by-one bug in DHT node-ID calculation 2012-02-16 03:51:39 +00:00
Arvid Norberg 47781bf2c5 cleanup, fix warnings 2012-02-15 10:57:49 +00:00
Arvid Norberg eecbb8a0f2 more metadata invariant fixes for edge cases 2012-02-10 16:37:50 +00:00
Arvid Norberg a31134d4a4 fix some invariant check failures in metadata transfer edge cases 2012-02-10 07:31:40 +00:00
Arvid Norberg c384d00dbf make bdecoder more robust when encountering errors (leave the resulting tree consistent) 2012-02-10 04:19:11 +00:00
Arvid Norberg be339c244f fix invalid invariant check 2012-02-09 07:46:23 +00:00
Arvid Norberg 98b3e6eb74 cleanup 2012-02-09 06:56:16 +00:00
Arvid Norberg 679abf2e57 this time, actually remove the encrypted torrent (AES-256 encrypted peer connections) 2012-02-09 06:47:22 +00:00
Arvid Norberg f7b5c10b2b add asserts to try to catch crash in peer_connection::received_valid_data 2012-02-09 06:24:58 +00:00
Arvid Norberg 8b459a27bd remove 'encrypted peer connections' feature (ssl is a better idea) 2012-02-09 06:23:58 +00:00
Arvid Norberg 94a1cae4a3 don't disconnect peers that don't have metadata 2012-02-07 09:18:07 +00:00
Arvid Norberg a6b5f761e8 rename is_local to is_outgoing and m_active to m_outgoing 2012-02-07 03:46:21 +00:00
Arvid Norberg c82695ef8e fix negative file size to add_file 2012-02-07 03:45:13 +00:00
Arvid Norberg 8d7940d47e clean up string constness issue 2012-01-29 23:05:07 +00:00
Arvid Norberg c77ca19140 fix shutdown issue when building without SSL 2012-01-29 23:04:22 +00:00
Arvid Norberg 639039a94e attempt to fix TOS setting (IP type of service) 2012-01-29 20:59:20 +00:00
Arvid Norberg 89ee8463c6 properly authenticate web seeds and trackers over SSL 2012-01-29 02:27:55 +00:00
Arvid Norberg 5d13327fb0 fix typo 2012-01-27 06:21:19 +00:00
Arvid Norberg 7741b732de fixed crash when loading malformed resume file 2012-01-27 05:08:06 +00:00
Arvid Norberg f13a91d8a8 support backtraces on windows 2012-01-26 10:33:39 +00:00
Arvid Norberg 6e9ef9edab fix connection asserts 2012-01-25 07:58:39 +00:00
Arvid Norberg 818620a5a8 fixed release build 2012-01-23 05:14:12 +00:00
Arvid Norberg 1a32205944 graceful shutdown of uTP sockets 2012-01-23 05:02:12 +00:00
Arvid Norberg dce8b3cc1a improve seed rank calculation 2012-01-23 01:57:40 +00:00
Arvid Norberg 5fc9224072 remove invalid assert 2012-01-22 21:24:51 +00:00
Arvid Norberg f23607bc05 make sparse_end support unbuffered files 2012-01-21 23:24:24 +00:00
Arvid Norberg 4706807300 fix issue with outgoing connections not being tied to a torrent 2012-01-21 21:29:22 +00:00
Arvid Norberg 7f90a241b6 don't let hung outgoing connection attempts block incoming connections 2012-01-21 09:05:34 +00:00
Arvid Norberg 5c8d476022 fix http_connection timeout (improves shutdown delay) 2012-01-21 08:18:41 +00:00
Arvid Norberg a478fcaf10 fix bug causing shutdown delays 2012-01-20 08:04:10 +00:00
Arvid Norberg ef1d8b5921 fix build 2012-01-20 06:07:19 +00:00
Arvid Norberg ed56520d24 more asserts around state updates 2012-01-20 05:40:32 +00:00
Arvid Norberg 88c5b35826 add asio debugging to the async shutdown of ssl sockets 2012-01-20 04:41:54 +00:00
Arvid Norberg 88012b6a1c log uTP states to stats log 2012-01-17 03:11:16 +00:00
Arvid Norberg d52eb9ed19 fixed release asserts issue in kademlia code 2012-01-16 22:48:43 +00:00
Arvid Norberg ae90a8f85e verify that torrent names matches the DNS name in its certificate (RFC 2818-style). Fix issues that was breaking SSL support and tidy up a bit 2012-01-15 23:34:43 +00:00
Arvid Norberg 4a40e68a82 landed ssl branch back into trunk 2012-01-14 16:04:25 +00:00
Arvid Norberg dd2db79896 fix overflow bug in progress_ppm field 2012-01-09 14:13:24 +00:00
Arvid Norberg 23c477142e merged integer overflow fix from aio branch 2012-01-05 21:11:55 +00:00
Arvid Norberg 61e8d3dd49 improved peer exchange performance by sharing incoming connections which advertize listen port 2012-01-04 20:49:54 +00:00
Arvid Norberg 315ff0bb83 exporting min_memory_usage() and high_performance_seed() functions from DLL 2012-01-04 12:36:58 +00:00
Arvid Norberg 2967468a8b fixed overflow in assert 2011-12-30 21:32:27 +00:00
Arvid Norberg 152cee19f1 add compile-time feature to enable logging of all peer requests 2011-12-29 12:15:29 +00:00
Arvid Norberg fcab6a257f fix post_torrent_update issue for checking torrents 2011-12-25 12:16:04 +00:00
Arvid Norberg 91b5fde1e2 don't recalculate auto managed files when session is paused 2011-12-24 20:15:22 +00:00
Arvid Norberg ec5555940b fix integer overflow assert 2011-12-24 20:13:51 +00:00
Arvid Norberg 08523e3855 fix state update for checking torrents (when using post_torrent_updates()) 2011-12-24 20:12:34 +00:00
Arvid Norberg 9412506df7 restore assignment removed by mistake 2011-12-23 20:40:13 +00:00
Arvid Norberg c2b8e869f1 one more recalculate_auto_manage postponing fix 2011-12-23 20:02:59 +00:00
Arvid Norberg f60ea6a4a9 support queue positions greater than 32768 2011-12-23 19:30:23 +00:00
Arvid Norberg 231fc30e13 postpone recalculate auto-managed torrents when changing many torrents state 2011-12-23 17:16:14 +00:00
Arvid Norberg d7103ab5b0 updated client_test to use post_torrent_updates() 2011-12-23 05:36:13 +00:00
Arvid Norberg 2877903e75 replaced std::map with boost::unordered_map for torrent list, to scale better with many torrents 2011-12-21 21:21:19 +00:00
Arvid Norberg e47a1eb5b2 fix state subscriptions for checking torrents 2011-12-19 05:55:38 +00:00
Arvid Norberg 7f3aac3959 fix issue with unchoke_slots_limit not preserving its value correctly 2011-12-19 05:53:11 +00:00
Arvid Norberg ef724014aa deprecated per-peer rate limits (and removed them from libtorrent_aio) 2011-12-18 12:52:09 +00:00
Arvid Norberg 78f16cedd9 deprecate torrent::set_ratio 2011-12-18 07:18:42 +00:00
Arvid Norberg 0370fb7632 don't filter local peers received from a non-local tracker 2011-12-12 07:03:51 +00:00
Arvid Norberg 7ee42393a5 simplified DHT parsing a bit 2011-12-01 04:01:36 +00:00
Arvid Norberg 8e8f798905 get rid of read-recurse hack 2011-11-30 20:07:18 +00:00
Arvid Norberg cc6bc5ba17 back-out attempt to make disk cache hits faster. it corrupts data 2011-11-28 17:51:14 +00:00
Arvid Norberg a3f0c04090 fix windows web seed path divider issue with recent web seeding feature 2011-11-28 11:22:51 +00:00
Arvid Norberg c4dded04ca fixed small memory leak in DHT 2011-11-28 11:11:29 +00:00
Arvid Norberg 27b25017f2 fix bug in policy::erase_peers and simplified the logic some 2011-11-28 09:55:00 +00:00
Arvid Norberg 47e81ff90b fixed uninitialized counter for stats logging 2011-11-28 01:27:55 +00:00
Arvid Norberg 413c04abcf fixed windows network path recognition issue 2011-11-27 10:23:50 +00:00
Arvid Norberg f979f7a77b make receive_buffer() not return a range exceeding the actual buffer 2011-11-27 01:08:28 +00:00
Arvid Norberg c3695d9fbb add have_piece function to torrent_handle 2011-11-27 00:01:13 +00:00
Arvid Norberg c279870516 add web seed support for torrents with pad files 2011-11-26 20:48:31 +00:00
Arvid Norberg ce90e17e2b web seeding fix for multi file torrents with a single file 2011-11-25 21:05:39 +00:00
Arvid Norberg faf11fc27d web seed fix 2011-11-25 10:56:33 +00:00
Arvid Norberg 6aba061cb8 fix pad file bug in create_torrent and amend docs about pad files 2011-11-25 09:45:28 +00:00
Arvid Norberg 38889d4bda fixed debug iterator assert 2011-11-24 23:01:35 +00:00
Arvid Norberg cab1f3d207 fix issue when peer list is full, previously we would sometimes reject new connections 2011-11-24 17:50:57 +00:00
Arvid Norberg 9250b551d9 fix stats build 2011-11-21 06:21:06 +00:00
Arvid Norberg 5d8ce01c7a silence valgrind warning about uninitialized memory 2011-11-20 20:49:18 +00:00
Arvid Norberg 0bcdf7706c fix potential invalid access when shutting down broadcast socket 2011-11-19 22:17:13 +00:00
Arvid Norberg 3d04b5cc49 fix logging formatting bug in utp_stream 2011-11-19 20:06:20 +00:00
Arvid Norberg 85ef2528c6 serve cache hits without a round-trip to the disk thread for improved seeding performance 2011-11-16 07:09:12 +00:00