Commit Graph

6409 Commits

Author SHA1 Message Date
Andrei Kurushin 7a8ffc2f2d fix web_seed redirects (#1651)
fix web_seed redirects, make all redirects ephemeral (to avoid resume serialization). remove dup slash for redirects in proxy mode. consolidate {convert_path_to_posix,escape_path} to escape_file_path
2017-02-22 22:46:33 -05:00
Alden Torres ee4d82d166 fix in DHT counters, alert types test, typos, formatting (#1747)
fix in DHT counters, alert types test, typos, formatting
2017-02-22 17:40:14 -05:00
Alden Torres 23edbfbee8 fixing sign-conversion warnings, part 19 2017-02-21 15:16:37 -05:00
Alden Torres 267cab6822 fixing sign-conversion warnings, part 18 2017-02-21 01:41:34 -05:00
arvidn 6d40d3a167 bump version number 2017-02-20 12:43:34 -05:00
arvidn 430ff6d7b4 minor fix to num_seeds 2017-02-19 18:47:32 -05:00
arvidn c8c605554a remove out-parameters from utp stream 2017-02-19 09:44:32 -05:00
Arvid Norberg 5f69e8217c clean up xml parser, to use string_view (#1731)
clean up xml parser, to use string_view
2017-02-19 07:34:55 -05:00
Alden Torres 1e98bf19a5 added support for enumerating the internal DHT live nodes (#1712)
added support for enumerating the internal DHT live nodes
2017-02-18 23:02:23 -05:00
arvidn 9dd48e88a4 make the utp_socket_manager a reference instead of a pointer in utp_stream 2017-02-18 22:44:53 -05:00
arvidn 2c51c59327 merge RC_1_1 into master 2017-02-18 13:29:12 -05:00
Arvid Norberg 6e65851b2d add some documentation for some counters (#1726)
add some documentation for some counters
2017-02-18 12:55:20 -05:00
Alden Torres bdc37ed619 fixing sign-conversion warnings, part 17, utp_stream (#1700)
fixing sign-conversion warnings, part 17, utp_stream
2017-02-18 06:52:46 -05:00
Alden Torres 1ab1b98138 optimized dht_get_peers_reply_alert storage and created alerts unit test (#1714)
optimized dht_get_peers_reply_alert storage and created alerts unit test
2017-02-18 00:13:46 -05:00
Alden Torres a670871519 fix build from RC_1_1 merge 2017-02-17 19:06:51 -05:00
arvidn 7b61313b99 fix invalid access when leaving seed-mode with outstanding hash jobs 2017-02-17 15:37:56 -05:00
arvidn 3ffa3f2a08 merged RC_1_1 into master 2017-02-17 00:35:49 -05:00
Andrei Kurushin 9bee2146d0 complete UNC path support (#1689)
complete UNC path support. all internal file api functions handle long size paths (> MAX_PATH) and special names (CON,PRN ...) with unit test
2017-02-16 23:47:08 -05:00
Arvid Norberg 116802fcdf update tuning documentation (#1717)
update tuning documentation and make the stats header be posted when logging is disabled (if stats_notifications are enabled)
2017-02-16 07:03:43 -05:00
Alden Torres f407d85349 minor formatting of end of line open brace 2017-02-15 11:31:53 -05:00
Pavel Pimenov 7f4c8aaf75 Add const peer_request p -> peer_request const& p (#1705)
Add const peer_request p -> peer_request const& p
2017-02-14 00:17:02 -05:00
arvidn 1300204ff1 back-port pavel's fix to ip_interface.name 2017-02-13 08:09:01 -05:00
pavel.pimenov 7e166ae9c4 Fix init ip_interface.name 2017-02-13 08:06:19 -05:00
Alden Torres 0b4bd75731 fix move related pointer issue in utp_socket_impl::consume_incoming_data 2017-02-12 21:19:27 -05:00
arvidn cbd1c26a11 fix ABI compatibility issue introduced with preformatted entry type 2017-02-12 20:42:30 -05:00
arvidn 5971818969 merge RC_1_1 into master 2017-02-12 02:24:14 -05:00
Alden Torres 2370c33872 fixing sign-conversion warnings, part 16, upnp class 2017-02-11 20:49:26 -05:00
arvidn 949d4cd12a fix regression in windows implementation of enum_net causing infinite loop 2017-02-11 19:09:21 -05:00
arvidn ee2688b83a use unique_ptr for packets in utp_stream 2017-02-11 17:11:49 -05:00
arvidn 85f6febfff fix some left-over incorrect default piece priorities (1 -> 4) 2017-02-11 15:32:51 -05:00
Alden Torres 4a80e2667c fixing sign-conversion warnings, part 15, torrent class (#1686)
fixing sign-conversion warnings, part 15, torrent class
2017-02-11 14:58:02 -05:00
arvidn edaa96bbbe clean up and simplify parts of test_web_seed 2017-02-11 08:05:36 -05:00
Arvid Norberg ff22c68df8 packet pool fixups (#1682)
packet pool fixups
2017-02-10 20:54:26 -05:00
Alden Torres 4d5ddc90f5 fixing sign-conversion warnings, part 14, minor refactor 2017-02-10 15:27:49 -05:00
Andrei Kurushin 76f91c3fc9 packet allocation pool (#1600)
packet allocation pool:
- no more direct malloc/free with cast
- reuse allocated memory for 3 common allocation case (with limit)
- access to packet_pool through utp_socket_manager instance
2017-02-10 08:25:03 -05:00
arvidn 964542e53b back-port ajax16384's fix to enum_net_interfaces on windows 2017-02-08 10:01:40 -05:00
Andrei Kurushin 02c870da94 fix disabled "close_redundant_connections" web_seed disconnect exception (#1676)
fix disabled "close_redundant_connections" web_seed disconnect
2017-02-08 07:58:04 -05:00
Andrei Kurushin d7917c4382 consolidate address family checking (#1678)
consolidate address family checking, fix no IPV6 windows and netlink builds
2017-02-08 07:52:23 -05:00
Alden Torres 1f72843fe3 fixing sign-conversion warnings, part 13, minor refactor (#1675)
fixing sign-conversion warnings, part 13, minor refactor
2017-02-07 23:36:13 -05:00
ximply c4d96c7aa9 add web_seed_name_lookup_retry to session_settings (#1674)
add web_seed_name_lookup_retry to session_settings to control web seed
name lookup retry in seconds, default is 1800 seconds
2017-02-07 01:34:52 -05:00
Alden Torres c8569b5e34 fixing sign-conversion warnings, part 12, minor refactor, eol cleanup (#1670)
fixing sign-conversion warnings, part 12, minor refactor, eol cleanup. created aux::clamp and default_piece_priority refactor
2017-02-07 00:22:30 -05:00
Arvid Norberg 692759ba81 slightly improve proxy settings backwards compatibility-1.1 (#1664)
slightly improve proxy settings backwards compatibility
2017-02-06 00:01:04 -05:00
Arvid Norberg 9e4045ed42 use 32 bit time points in torrent (#1662)
use 32 bit time points in torrent and add some slack to time point comparisons in python test
2017-02-05 19:18:06 -05:00
arvidn 381defab05 merged RC_1_1 into master 2017-02-05 12:51:48 -05:00
arvidn 7ff4f56ae2 add function to get default settings 2017-02-05 11:31:43 -05:00
Alden Torres de6f2a9d88 fixing sign-conversion warnings, part 11, created aux::array and refactor (#1649)
fixing sign-conversion warnings, part 11, created aux::array and refactor
2017-02-04 22:05:53 -05:00
Arvid Norberg c00a25a645 back-port aldenml's fix to not save replacement nodes twice to 1.1 (#1661)
back-port aldenml's fix to not save replacement nodes twice to 1.1
2017-02-04 19:58:32 -05:00
Arvid Norberg 0a26ed8d1e fix issue where updates to super seeding state would not include the torrent in the state_update_alert (#1659) 2017-02-04 16:09:42 -05:00
Falcosc a9d6d54111 fix multible torrent status timer bugs related to move time (#1492)
fix last_upload and last_download overflow after 9 hours in past. change last_upload, last_download, finished_time,  resume, upload_mode_time to time_point and duration
2017-02-04 13:34:14 -05:00
Alden Torres 3ef4109bf3 avoid double saving of replacements nodes, removed replacement_cache, test (#1656)
avoid double saving of replacements nodes, deprecated replacement_cache, test
2017-02-04 11:25:11 -05:00
arvidn 34ecb60c09 use enum class for close reason 2017-02-04 11:24:35 -05:00
Alden Torres 4c487ec47c using std:: for integral types 2017-02-03 22:15:47 -05:00
arvidn c9a2fed2c9 add tests for edge cases of session settings, and fix a few integer overflows 2017-02-03 20:42:59 -05:00
arvidn 3ae2630fa2 fix merge issue 2017-02-02 23:09:54 -05:00
arvidn c8e488b094 merged RC_1_1 into master 2017-02-02 22:58:33 -05:00
arvidn 2b53eb28a9 minor cleanup in automatic connections_limit management 2017-02-01 23:28:13 -05:00
Arvid Norberg 4733670aa1 fix issue where num_seeds could be greater than num_peers in torrent_status (#1645)
fix issue where num_seeds could be greater than num_peers in torrent_status
2017-02-01 01:39:09 -05:00
arvidn dbd734e7a2 sync. creation and clearing of file progress with the piece picker 2017-01-31 08:14:36 -05:00
Falcosc e40bdc566c 1.1.2 set queue position by number (#1617)
set queue position by number
2017-01-30 21:31:31 -05:00
Alden Torres d36c598eeb fixing sign-conversion warnings, part 10 (#1642)
fixing sign-conversion warnings, part 10
2017-01-30 20:31:32 -05:00
Arvid Norberg 29db3de6c0 wrap most instances of throw, and terminate on builds where exceptions are disabled (#1639)
wrap most instances of throw, and terminate on builds where exceptions are disabled
2017-01-29 15:37:42 -05:00
arvidn 3339b2abe1 back port file progress invariant checking to 1.1 2017-01-29 15:34:06 -05:00
arvidn 36858eae85 cleanup packet_buffer class 2017-01-29 10:35:23 -05:00
arvidn fc70d70e33 fix file_progress invariant check 2017-01-29 02:46:29 -05:00
arvidn ffca4afaa6 remove unintuitive limit on peer connections (especially with large values of file_pool_size) 2017-01-29 02:45:30 -05:00
Alden Torres 2437b3c134 created aux::typed_span and related refactor 2017-01-28 23:28:38 -05:00
Alden Torres deecdb6cfa added support for infohashes sample in dht storage (#1586)
added support for infohashes sample in dht storage
2017-01-28 20:24:53 -05:00
arvidn 17ee28d176 Merge branch 'master' of https://github.com/arvidn/libtorrent 2017-01-28 14:36:28 -05:00
arvidn 6b91adab6a merged RC_1_1 into master 2017-01-28 14:36:23 -05:00
Alden Torres 3803661863 moved alloca.hpp to private aux_ and size refactor (#1634)
moved alloca.hpp to private aux_ and size refactor
2017-01-27 12:43:34 -05:00
Alden Torres ddf1b62e4b fixing sign-conversion warnings, part 9 2017-01-27 01:23:18 -05:00
arvidn a5284b583c fix bug in udp tracker announce messages 2017-01-26 23:46:55 -05:00
arvidn cca5ab8368 fix integer overflow 2017-01-26 23:39:56 -05:00
Alden Torres 2bc7a60f33 fixing sign-conversion warnings, part 8, created aux::unique_ptr, refactor (#1616)
fixing sign-conversion warnings, part 8, created aux::unique_ptr, refactor
2017-01-26 08:31:20 -05:00
Alden Torres 070e85090b more std:: prefix, consts, auto refactor, formatting 2017-01-26 08:30:20 -05:00
Alden Torres 22b745d548 added TORRENT_NO_DEPRECATE around file_progress_float 2017-01-25 23:44:30 -05:00
Arvid Norberg ba9fae8e1f fix issue with unloading torrents (#1624)
fix issue with unloading torrents
2017-01-25 23:42:59 -05:00
arvidn b19cb7bd87 fixed finished-time calculation 2017-01-25 01:56:19 -05:00
Alden Torres 4ddd4b72c6 fixing sign-conversion warnings, part 7 (#1604)
fixing sign-conversion warnings, part 7
2017-01-24 01:35:17 -05:00
Andrei Kurushin 7c9679bf6a fix missed static array specifier 2017-01-23 08:21:34 -05:00
arvidn 132be5101f fix stat cache issue that sometimes would produce incorrect resume data 2017-01-22 18:14:10 -05:00
arvidn 4c4a204bee fix inclusion of auxv.h header and definition of TORRENT_ANDROID 2017-01-22 14:11:44 -05:00
arvidn c15a575e34 remove dependency on aligned_storage and aligned_union to support older versions of GCC 2017-01-22 14:11:44 -05:00
Alden Torres 8b98bf2c9d more use of peer_class_t in public API 2017-01-22 14:06:27 -05:00
Andrei Kurushin 06c68052b4 fix missed static array specifier 2017-01-22 13:39:10 -05:00
arvidn 4fe5320bf8 remove debug logging of deleting files 2017-01-22 09:44:49 -05:00
arvidn c239c2bdc4 factor out storage_piece_set into its own file 2017-01-22 09:29:52 -05:00
arvidn d03540e3b3 move disk_job_fence to its own file 2017-01-22 01:20:27 -05:00
Arvid Norberg 6a701437b6 use strong_typedef for peer_class_t type (#1595)
use strong_typedef for peer_class_t type
2017-01-21 22:40:19 -05:00
arvidn 173951ec7f merged RC_1_1 into master 2017-01-21 02:28:29 -05:00
arvidn 6d17f0fb66 storage optimization to peer classes 2017-01-21 01:23:07 -05:00
Falco c57d062e0d fix torrent name in alerts of builds with deprecated functions and use non deprecated for internal calls 2017-01-20 19:05:05 -05:00
Andrei Kurushin fffdd4703d make handler exchange without copy->clone mem allocation (#1583)
make uTP handler exchange without copy->clone mem allocation
2017-01-20 19:03:20 -05:00
arvidn 202386dd9d factor out verify_resume_data to storage_utils 2017-01-20 01:36:03 -05:00
Alden Torres 8cc88a8921 return vector of correct size if internal file_progress is empty 2017-01-19 18:12:30 -05:00
Andrei Kurushin 393e705d5c refactor entry::dictionary_type (#1568)
consolidate conditional std::map string code
enable C++14 string_view std::map for VS2015
2017-01-19 18:08:39 -05:00
arvidn c7c204280a make sure torrent_info::is_valid returns false when the file fails to load 2017-01-18 23:58:33 -05:00
arvidn e98dd14760 factor out delete_files function into storage_utils 2017-01-18 00:56:01 -05:00
Alden Torres c33af5a552 added dht_invalid_find_node counter metric 2017-01-18 00:55:32 -05:00
Alden Torres ef9d1ecd7f fixing sign-conversion warnings, part 6 2017-01-17 20:51:26 -05:00
Alden Torres a2b3248f5d call set_proxy_settings during session_impl::setup_listener (#1563)
call set_proxy_settings during session_impl::setup_listener
2017-01-17 17:04:52 -05:00
Arvid Norberg ec37436d49 factor out move_storage function to storage_utils.cpp (#1571) 2017-01-17 08:02:44 -05:00
Alden Torres a5825c0d2e fixing sign-conversion warnings, part 5, minor refactor (#1559)
fixing sign-conversion warnings, part 5, minor refactor
2017-01-16 21:51:49 -05:00
arvidn 5736237a63 fix error handling in random.cpp and fix accidental openssl dependency 2017-01-16 21:33:57 -05:00
Falcosc a07ffe42f8 fix torrent peer class index overflow (#1557)
fix peer class index width
2017-01-16 18:20:43 -05:00
arvidn 3b9c65daf1 remove unused function, has_interface() 2017-01-16 15:14:47 -05:00
arvidn 0c189e08b5 use /dev/random as random number source on macOS 2017-01-15 12:18:08 -05:00
Arvid Norberg 04589f3bef don't load user_agent and peer_fingerprint from session_state (#1538)
don't load user_agent and peer_fingerprint from session_state
2017-01-15 01:21:52 -05:00
arvidn 934c58a816 merged RC_1_1 into master 2017-01-15 00:45:17 -05:00
Arvid Norberg b52419d4d9 make the DHT log output deterministic (#1550)
make the DHT log output use the search ID rather than a pointer value. Make random_bytes() deterministic in simulations
2017-01-14 22:36:25 -05:00
Alden Torres df6cb6a48d fixing sign-conversion warnings, part 4, minor refactor (#1549)
fixing sign-conversion warnings, part 4, minor refactor
2017-01-14 18:53:25 -05:00
Alden Torres c3d9614dfb minor code refactor and cleanup 2017-01-14 06:59:44 -05:00
Alden Torres 1874a917b0 added std:: prefix, end of file cleanup, formatting, consts 2017-01-14 05:59:26 -05:00
Falcosc 9199756a27 fix bitfield m_buf null pointer (#1526)
fix operations on empty bitfield
2017-01-13 17:08:54 -05:00
Alden Torres a31ba7972d fixing sign-conversion warnings, part 3 (#1537)
fixing sign-conversion warnings, part 3. making aux::vector index type default to int
2017-01-13 01:55:29 -05:00
arvidn 77de1e1b43 improve error message in torrent::force_tracker_request precondition error 2017-01-13 01:53:44 -05:00
Alden Torres 4f7b69be90 fix of internal session_impl logic regarding TOS (#1518)
fix of internal session_impl logic regarding TOS
2017-01-13 00:55:54 -05:00
Arvid Norberg 2120a13869 fix file rename issue with name prefix matching torrent name (#1524)
fix file rename issue with name prefix matching torrent name
2017-01-13 00:39:49 -05:00
Alden Torres 7ac2805c2c added custom resize methods to aux::vector (#1514)
added custom resize methods to aux::vector, code refactor
2017-01-12 18:40:59 -05:00
Arvid Norberg 3d06371f31 factor out some common storage utilities out of storage.cpp (#1515)
factor out some common storage utilities out of storage.cpp
2017-01-11 00:42:10 -05:00
arvidn d6a7c7d991 fix error in accounting of IP overhead 2017-01-11 00:02:18 -05:00
Alden Torres 3b4867046f fixing sign-conversion warnings, part 2 2017-01-10 20:19:03 -05:00
Andrei Kurushin 5fa48c65da move const data to readonly segment 2017-01-09 14:41:44 -05:00
arvidn d1ea80c2c3 remove disk-access-log build configuration 2017-01-09 08:37:02 -05:00
Alden Torres 0f7a55cb8b fixing sign-conversion warnings, part 1 (#1503)
fixing sign-conversion warnings, part 1
2017-01-09 01:43:57 -05:00
arvidn 1d1ab4f4b5 removed file-leak code, temporarily used to trouble-shoot files appearing to be left open 2017-01-09 01:43:15 -05:00
Arvid Norberg 1cf3689578 simplify disk thread a little bit (#1504)
simplify disk thread a little bit
2017-01-08 19:22:59 -05:00
Andrei Kurushin 224db08997 fix frequent dealloc/alloc for utp socket lists (#1496)
fix frequent dealloc/alloc for utp socket lists
2017-01-08 19:18:26 -05:00
arvidn 0c7e86078b merged RC_1_1 into master 2017-01-08 10:18:41 -05:00
arvidn 39866c2306 fix division by zero when setting tick_interval > 1000 2017-01-07 15:21:02 -05:00
Andrei Kurushin 78bacfe7c1 fix various build options 2017-01-07 10:49:42 -05:00
Steven Siloti 2ed4bee1cb remove racey assert
We arn't holding any mutex here so the fence could have already been cleared
by the disk io threads.
2017-01-07 02:54:12 -05:00
Andrei Kurushin ff8345101e consolidate windows crypto provider implementation into single header (#1495)
consolidate windows crypto provider into single header
2017-01-07 01:53:39 -05:00
Arvid Norberg 57f52adc88 various cleanup (#1497)
* various cleanup

* fix

* cleanup
2017-01-06 01:39:01 -05:00
arvidn 7957e2a30e fix move_storage() to its own directory (would delete the files) 2017-01-03 21:09:26 -05:00
arvidn 41dbb47123 compact block_cache_reference by using storage_index_t instead of pointer. make sure storage object is kept alive by block_cache_references 2017-01-02 13:45:16 -05:00
arvidn e99d907c72 fix assert 2017-01-02 00:01:43 -05:00
arvidn 4ebc344e48 make disk_io_thread responsible for the storage object. torrents refer to it by index 2017-01-01 13:54:39 -05:00
arvidn 9007c8333f merge RC_1_1 into master 2017-01-01 11:08:57 -05:00
arvidn 1600d4dca5 clean up file pool a bit 2017-01-01 09:56:50 -05:00
arvidn 005d1a47b0 deprecate dont_flush_write_cache setting 2016-12-31 17:44:57 -05:00
Andrei Kurushin 4d92e22cd8 decrease cryptoapi aux::random_bytes() cpu usage 2016-12-31 12:42:55 -05:00
arvidn 23a7e8d40a hide the block_cache_reference from disk_buffer_holder 2016-12-31 10:31:54 -05:00
arvidn 59b322bc79 merged RC_1_1 into master 2016-12-29 08:54:28 -08:00
arvidn 5a97af54db optimize chained buffer a bit and factor out nop into non_owning_handle 2016-12-29 07:05:18 -08:00
Arvid Norberg af126fe507 make buffer_allocator_interface an implementation detail of the disk_io_thread (#1463)
make buffer_allocator_interface an implementation detail of the disk_io_thread by using disk_buffer_holder in the disk interface. make chained_buffer use holders instead of free deleter functions and userdata to support putting disk_buffer_holder objects in there. Also make the session buffers be held by holders
2016-12-28 17:47:18 -08:00
Pavel Pimenov 516e86d0ea Refactoring routing_table (#1468)
routing_table refactor. ip_set::count -> ip_set::exists. Fix copy-paste routing_table::remove_node
2016-12-28 14:40:56 -08:00
Andrei Kurushin e10edb5e0b move LoadLibrary logic to new win_util module (#1464)
move LoadLibrary logic to new win_util module. use get_library_procedure as common windows dyn proc load routine
2016-12-28 10:12:20 -08:00
Andrei Kurushin 08aab3a879 make internal sha1 & sha512 implementation declarations match libcrypto api 2016-12-27 22:30:57 -08:00
Arvid Norberg f1e34dfbd5 remove long-standing deprecated filter_pieces functions (#1457)
remove long-standing deprecated filter_pieces functions
2016-12-27 12:42:23 -08:00