arvidn
3a9861e237
complete the error handling test and make it part of the default simulation test suite. It will run a file transfer between two clients repeatedly, each time cause another memory allocation fail, until every single memory allocation has failed once. Any invariant check failure, assertion or signal will cause the test to fail
2018-01-08 04:44:52 -05:00
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