Commit Graph

1944 Commits

Author SHA1 Message Date
arvidn 88643dd121 fix m_in_constructor assert for peer_connection (if the peer connection is constructed, but bt_peer_connection constructor fails, it needs to be cleared). Fix an invariant in session on ungraceful shutdown. Make test framework a bit more robust 2018-01-06 14:29:20 -05:00
arvidn 98419aee12 disable debug iterators in simulations on windows, since exception safety is compromised 2018-01-05 10:55:12 -05:00
arvidn 0731200149 block_size is a constant, no need in passing it around as a variable 2018-01-03 08:45:25 -05:00
arvidn 70448a2c3a update libsimulator submodule 2018-01-02 18:42:01 -05:00
arvidn 17869828d7 don't redirect stderr by default, to get sanitizer output 2018-01-02 18:42:01 -05:00
arvidn 0eec9194db fix suppressing stderr redirection in tests, with the -n option 2017-12-28 17:54:23 +01:00
arvidn 7ea5946305 remove some last lexical_cast residual 2017-12-27 12:44:36 +01:00
arvidn 753826cbb8 merger RC_1_1 into master 2017-12-23 18:15:01 +01:00
arvidn 43d7f980d0 make the chunk header parser properly fail at end of buffer, and not require zero terminated strings 2017-12-23 17:06:50 +01:00
arvidn 62bf524e75 disable DHT logging with the TORRENT_DISABLE_LOGGING macros as well 2017-12-23 12:01:18 +01:00
arvidn b7decd452e add getters for peer_class_filter and peer_class_type_filter 2017-12-23 09:25:06 +01:00
arvidn bb945f5cf4 introduce a proper type for pex flags to improve type-safety 2017-12-17 23:17:12 +01:00
arvidn 4d32d45100 merged RC_1_1 into master 2017-12-16 14:21:22 +01:00
arvidn d52763805c back-port the tracker timeout test from master 2017-12-16 13:54:15 +01:00
arvidn 55babc57e6 merged RC_1_1 into master 2017-12-15 17:18:27 +01:00
arvidn d1a63cd781 fix build against boost-1.66, specifically the boost.asio changes 2017-12-15 11:29:53 +01:00
arvidn ba224a1577 restore the parse_magnet_uri overload that amends an add_torrent_params object 2017-12-14 12:20:02 +01:00
arvidn 7b06a5ee6e merged RC_1_1 into master 2017-12-13 12:36:35 +01:00
arvidn fe6473039c fix rate limit utp feature 2017-12-11 08:40:35 -05:00
arvidn b00b3184c0 some minor i2p cleanups 2017-12-08 09:57:21 +01:00
arvidn 90ccd5180f merged RC_1_1 into master 2017-12-07 18:31:16 +01:00
arvidn f81a20a035 fix loading resume data when in seed mode 2017-12-03 23:43:55 +01:00
arvidn 0fe2e85fee fix part-file creation race condition (back-port from master) 2017-12-03 18:13:54 +01:00
arvidn c16eb32b94 merge RC_1_1 into master 2017-12-03 18:12:35 +01:00
arvidn 5d28e0b76e reduce boilerplate in magnet link test 2017-12-01 20:40:50 +01:00
Alden Torres 163d13e1d2 implemented support magnet URI extension, select specific file indices for download, BEP53 (#2578) 2017-12-01 12:40:19 +01:00
arvidn 9d37fbd1f7 disable tests requiring logging when building with logging disabled 2017-11-24 07:50:06 +01:00
arvidn 4bc93cff38 merge RC_1_1 into master 2017-11-23 18:01:32 +01:00
arvidn 5e7666526e fix IPv6 tracker announce issue 2017-11-23 10:11:59 +01:00
arvidn d8ea7fc5eb merged RC_1_1 into master 2017-11-23 01:17:43 +01:00
arvidn 1593916e62 fix ipv6 udp tracker test 2017-11-23 00:05:08 +01:00
arvidn eac3fbceda fix stout redirection in test framework 2017-11-23 00:05:08 +01:00
arvidn 04c2c35f8d restore path sanitization behavior of ':' 2017-11-21 08:50:09 +01:00
arvidn 22f8bdfebc merge RC_1_1 into master 2017-11-21 00:50:02 +01:00
arvidn f262bbdcea use seconds32 as the retry-time for web seeds 2017-11-19 16:20:36 +01:00
arvidn 1c278cc697 add API to query whether alerts have been dropped or not 2017-11-11 15:42:53 +01:00
arvidn b88c193742 fix sign conversion warning in peer_class_type_filter 2017-11-11 09:17:37 +01:00
Pavel Pimenov 8ac6bbe553 add http_parser::header_int (#2472) 2017-11-09 23:43:26 +01:00
arvidn 381db57b42 improve simulations by reseeding the random number generator. also erase all output in between iterations in test_error_handling 2017-11-09 17:59:13 +01:00
arvidn f41d2b5d3b move shared_ptr instead of copying them, when constructing DHT observers 2017-11-08 23:09:43 +01:00
arvidn 7730eea401 restore backwards compatibility with the API before download_priority_t was introduced 2017-11-06 01:24:24 +01:00
arvidn d9de6767a7 back-port updated ssl test cert from master 2017-11-05 22:45:20 +01:00
arvidn a690e6c76d add throwing overload of parse_magnet_uri 2017-11-05 20:31:06 +01:00
arvidn 6785046c2f introduce a download_priority_t type, for uniform an type-safe piece- and file priorities 2017-11-02 08:20:21 +01:00
arvidn 505b388a36 regenerate ssl test certificates and keys 2017-11-01 18:43:00 +01:00
arvidn f57b90b500 introduce type for torrent queue_position 2017-11-01 10:52:45 +01:00
Alden Torres f02e7514e1 fix issue of null m_part_file in default_storage readv/writev (#2490)
call need_partfile if necessary in default_storage constructor and no .reset() in release_files()
2017-10-31 16:49:58 +01:00
Alden Torres f040d6d860 added reopen_network_sockets method to allow manual reopen of listen/outgoing sockets (#2476) 2017-10-28 12:15:35 +02:00
arvidn 50bef25786 make the piece-picker less two-phase initialized 2017-10-26 23:39:15 +02:00
arvidn 80ac90727b remove some questionable code from disk_io_thread when deleting files for a torrent and extend transfer test to cover deleting files while seeding 2017-10-25 19:00:54 +02:00
Alden Torres b380bf8059 minor and general code cleanup/refactor 2017-10-25 09:58:47 +02:00
Alden Torres 174a2ca65f add limit of max 50 upnp mappings and recover free global mappings (#2470) 2017-10-24 16:16:22 +02:00
arvidn a6c85496b5 make parse_magnet_uri return the add_torrent_params instead of of taking an in-out parameter 2017-10-15 04:29:53 +02:00
arvidn bb65acb082 make feature_flags proper type-safe 2017-10-14 23:33:48 +02:00
arvidn 8adcfdbf41 make disk_buffer_holder know the size of the bufer it holds, to fix buffer overrun in chained_buffer
fix
2017-10-13 21:07:31 +02:00
arvidn 85b6d98454 merged RC_1_1 into master 2017-10-11 11:19:02 +02:00
arvidn f19cca1374 fix infinite loop when parsing certain invalid magnet links 2017-10-11 09:11:58 +02:00
arvidn 9111d5977e make the variables holding the source of external IPs type-safe 2017-10-10 22:38:36 +02:00
Arvid Norberg 60b74d2616 merged RC_1_1 into master 2017-10-10 14:25:12 +02:00
Arvid Norberg 830ef0bedd prevent dependency on openssl from leaking outside of libtorrent (libssl and libcrypto should not be a usage requirement). This cleans up most tests to build without having to also link against openssl 2017-10-09 17:15:35 +02:00
arvidn 1d15e6bfb4 merge RC_1_1 into master 2017-10-08 18:21:25 +02:00
arvidn f080149081 fix parsing of torrents with certain invalid filenames 2017-10-08 15:54:08 +02:00
arvidn cdd9f91999 fix leak of torrent_peer objecs (entries in peer_list) 2017-10-07 11:43:42 +02:00
arvidn d0f55224fb simplify copy_ptr 2017-10-07 02:59:46 +02:00
arvidn 21fef88928 stricten up the filename sanitization a bit 2017-10-01 20:30:02 +02:00
arvidn c0d76a5304 fix regression in torrent size check 2017-10-01 16:44:58 +02:00
arvidn 33b03e1f8e improve handling of case where a torrent file has no files in it 2017-10-01 10:53:43 +02:00
arvidn 5026659cb6 clean up and fix edge cases in update_path_index 2017-10-01 04:43:41 +02:00
arvidn 17d78d3b8f fix bounds checking in parsing of gzip header 2017-10-01 03:33:38 +02:00
arvidn 9d276ada8a fix issue with the name in single file torrents being sanitized away 2017-10-01 01:12:39 +02:00
arvidn 12e92aeeb4 make the chunk header parser a bit more strict and accurate (and not rely on there being a 0 termiator character) 2017-09-30 11:59:00 -07:00
Arvid Norberg 61733787f7 fix redundant assert in gzip header check 2017-09-29 23:51:45 -07:00
arvidn 7444c12c6c upgrade test_bdecode to use the new bdecode API 2017-09-28 19:38:33 -07:00
arvidn 68f05d6380 fix some warnings and integer overflow with torrents that are too big 2017-09-28 14:59:28 -07:00
arvidn edad33d270 fix const correctness in get_peer_class 2017-09-24 14:49:55 -07:00
arvidn 4c4c630fae merge RC_1_1 into master 2017-09-23 10:46:29 -07:00
Steven Siloti 8648de3706 DHT nodes should only handle requests on their socket (#2355) 2017-09-21 21:00:38 -07:00
arvidn 9839507ecd simplify to_string to not apply unary - to an unsigned integer 2017-09-17 21:23:24 +02:00
arvidn 1a8660bca7 don't shadow static_category in alerts 2017-09-16 19:58:11 +02:00
arvidn 9f177ad413 analyze with sonarqube 2017-09-08 22:19:48 +02:00
arvidn e36b066020 make logging alerts enabled by default in autoconf builds 2017-09-05 09:21:08 +02:00
arvidn bb51dcdbb9 move dht_settings into its own header cpp file-pair and dht_settings into the dht namespace 2017-09-04 22:38:16 +02:00
arvidn 95c8c3018a use span in gzip, http_parser and http_connection 2017-09-04 22:33:38 +02:00
arvidn 53ff169db1 use string_view in find_metric_idx 2017-09-04 07:50:13 +02:00
Steven Siloti 5361ffc1c2 add_file_borrow: use string_view instead of pointer, size parameters (#2302) 2017-09-02 23:58:36 +02:00
arvidn 2025c15ec1 cleanup tokenize_string -> split_string 2017-09-02 07:46:16 +02:00
arvidn 11f008e90e use a strong typedef for port mapping id 2017-09-02 07:02:07 +02:00
Arvid Norberg f734ad067b straighten out some type-safety in port mapping enums (#2285) 2017-08-30 20:47:49 +02:00
Arvid Norberg 1075ae3b8d remove session pool allocator and use the buffer class instead (#2274)
simplify append_buffer by using size() to determine size of the buffer. make the move explicit in chained_buffer::init_buffer_entry
2017-08-28 11:37:53 +02:00
Steven Siloti cc3f73de96 add span ctor from const containers (#2275) 2017-08-28 11:36:51 +02:00
Arvid Norberg d250ba5a17 wrap destination string in i2p_peer in string_ptr handler (#2268) 2017-08-25 09:42:46 +02:00
arvidn d59d394d5b remove residual mentions of mtu for interfaces 2017-08-20 22:34:20 +02:00
Alden Torres 66734e2e5b using if_indextoname instead of RTM_GETLINK to fill the interface name in enum_net_interfaces (#2253)
using if_indextoname instead of RTM_GETLINK to fill the interface name in enum_net_interfaces. removed IFA_LABEL switch case, removed ip_interface::mtu, master rebase
2017-08-20 10:55:59 +02:00
arvidn 05b5b4ef4d merged RC_1_1 into master 2017-08-16 22:46:47 +02:00
arvidn b5fe0f95a2 fix issue in UTF-8 encoding validation 2017-08-16 13:15:19 +02:00
arvidn b70d3efba9 fix infinite loop when parsing torrents whose filenames have zeroes. #2247 2017-08-16 07:21:34 +02:00
arvidn fcb9c7b6f3 fix invalid read in parse_int() in bdecode_node() and lazy_bdecode() 2017-08-15 00:01:37 +02:00
arvidn 865ff09a84 merge RC_1_1 into master 2017-08-10 16:44:57 +02:00
arvidn 560ef29276 fix issue with very long tracker- and web seed URLs. Instead of using a fixed length stack allocated request buffer, use a dynamically growing stringstream 2017-08-10 14:01:11 +02:00
arvidn 4e497e1383 fix issue where paths were not correctly coalesced when adding files to file_storage (used more memory than necessary) 2017-08-10 12:10:46 +02:00