Charles Kerr
0a6d1806f9
perf: avoid string allocations by using fixed-width hash strings ( #5725 )
2023-07-04 13:04:03 -05:00
Charles Kerr
e68b76bc14
perf: use small::unordered_map in tr_torrent::primary_mime_type() ( #5722 )
2023-07-04 09:40:36 -05:00
Charles Kerr
7c7771a12b
perf: use small:set in tr_file_piece_map::reset() ( #5720 )
2023-07-03 21:57:09 -05:00
Charles Kerr
d76d26a580
perf: faster Cache::write_contiguous() ( #5715 )
2023-07-02 15:23:32 -05:00
Charles Kerr
d2d30c2734
chore: update mime types ( #5712 )
2023-07-02 08:32:21 -05:00
Charles Kerr
4c282bdbb4
fix: recent build warnings and errors ( #5711 )
...
* fix: use std::empty instead of isEmpty()
* fix: fix trivially assignable warning hicpp-move-const-arg
* fix: fix clang-diagnostic-unused-but-set-variable warning
* fix: fix readability-braces-around-statements warning
2023-07-01 10:22:15 -05:00
tearfur
9c17463a80
fix: revert "perf: improve IPv4 `tr_address` comparison" ( #5709 )
...
* Revert "perf: improve IPv4 `tr_address` comparison (#5651 )"
This reverts commit 70decc1d9d
.
* added tests
* add ipv4 equal test and std header
2023-07-01 09:39:35 -05:00
Charles Kerr
8183d7fddf
refactor: utils naming ( #5696 )
...
* chore: rename tr_strvContains to tr_strv_contains
* chore: rename tr_strvStartsWith to tr_strv_starts_with
* chore: rename tr_strvEndsWith to tr_strv_ends_with
* chore: rename tr_strvSep to tr_strv_sep
* chore: rename tr_strvStrip to tr_strv_strip
* chore: rename tr_strvToBuf to tr_strv_to_buf
* refactor: rename tr_saveFile() to tr_file_save()
rename tr_loadFile() to tr_file_read()
rename tr_moveFile() to tr_file_move()
* refactor: rename tr_parseNum() to tr_num_parse()
refactor: rename tr_parseNumRange() to tr_num_parse_range()
* chore: group related functions together in header
2023-06-30 09:49:58 -05:00
Charles Kerr
ce66e5c442
iwyu: remove, add std headers where used ( #5694 )
...
* chore: remove unused #include <array>
* chore: remove unused #include <chrono>
* chore: remove unused #include <set>
* chore: remove unused #include <algorithm>
* chore: remove unused #include "interned-string.h"
* chore: remove unused #include <list>
* chore: remove unused #include <optional>
* chore: iwyu <cstddef>
* chore: iwyu <ctime>
* chore: remove unused #include <cerrno>
* chore: remove unused #include <deque>
* chore: remove unused #include <vector>
* chore: remove unused #include <memory>
* chore: remove unused #include <unordered_set>
* chore: remove unused #include <array>
* chore: remove unused #include <mutex>
* chore: remove unused #include <functional>
* chore: remove unused #include <cmath>
2023-06-29 23:51:55 -05:00
Charles Kerr
cb101ec6cf
refactor: make tr_logGetQueueEnabled() private ( #5693 )
...
it is only used in log.cc, so remove it from the public header
2023-06-29 14:19:40 -05:00
tearfur
b79de0b431
perf: convert comparator functors to static constexpr ( #5687 )
2023-06-29 13:13:25 -05:00
Charles Kerr
2f2ae61d0c
refactor: remove unused function tr_peer.bandwidth() ( #5691 )
2023-06-29 11:14:05 -05:00
Charles Kerr
22bb9e5757
refactor: rename tr_dirSpace() to tr_sys_path_capacity() ( #5689 )
2023-06-29 10:23:00 -05:00
Charles Kerr
3474a1da58
chore: remove tr_wait(); use std::this_thread::sleep_for() ( #5683 )
2023-06-29 08:51:39 -05:00
Charles Kerr
fd4a0b1d16
chore: remove unused function tr_env_get_int() ( #5682 )
2023-06-28 22:04:07 -05:00
Charles Kerr
7e1ecf2f0f
refactor: remove useless TR_DEBUG_FD env var ( #5681 )
...
This feature was originally meant to redirect verbose logging to *any*
fd, but it now only supports writing to stdout or stderr, and defaults
to stderr.
Redirecting to stdout isn't very useful and complicates the code, so
just remove it and always use stderr.
2023-06-28 16:26:15 -05:00
tearfur
7fa1498ed5
perf: make `CompareCacheBlockByKey` constexpr ( #5678 )
2023-06-28 10:23:38 -05:00
tearfur
6bbe6537cb
feat: bypass disk write cache when `cache-size-mb` is zero
2023-06-28 08:57:26 -05:00
Charles Kerr
9afced725a
refactor: remove libtransmission::Buffer ( #5676 )
...
* refactor: use StackBuffer in announcer-udp
* chore: update buffer tests
* refactor: remove unused libtransmission::Buffer
superseded by libtransmission::StackBuffer
2023-06-27 19:06:25 -05:00
Geoffrey Bonneville
7fdfabe184
fix: do not write log if file handler is bad ( #5675 )
2023-06-27 13:44:10 -05:00
Charles Kerr
2db2091599
perf: in cache, flush biggest contiguous blocks ( #5671 )
2023-06-27 12:08:29 -05:00
Charles Kerr
24bc3d135d
perf: add StackBuffer using small::vector ( #5672 )
...
* perf: use libtransmission::StackBuffer in variant-benc
* perf: use libtransmission::StackBuffer in variant-json
* perf: use libtransmission::StackBuffer in handshake
* perf: use libtransmission::StackBuffer in peer-msgs
* perf: use libtransmission::StackBuffer in peer-io
2023-06-27 10:51:20 -05:00
tearfur
70decc1d9d
perf: improve IPv4 `tr_address` comparison ( #5651 )
2023-06-26 21:17:32 -05:00
tearfur
ed02f98014
ditch `std::lldiv` so that functions can take matching parameter types ( #5659 )
...
* ditch `std::lldiv` so that functions can take matching parameter types
* revert unintended change
2023-06-25 13:29:58 -05:00
Charles Kerr
dc88b97f37
refactor: small again ( #5666 )
...
* refactor: restore the non-small parts of 5654
* refactor: restore the peer-mgr-active-requests parts of 5654
* chore: iwyu evbuffer in web.h
2023-06-25 12:33:32 -05:00
tearfur
aa6f00b162
refactor: global-ip-cache.cc nits ( #5655 )
2023-06-24 14:30:37 -05:00
LaserEyess
9b5a75528e
fix: broken unix socket support ( #5665 )
...
The changes in #5523 made two errors in the new implementation
1. tr_unix_address::to_string() got the ternary check backwards, leading
to always printing an empty string when the address is valid.
2. The inputs to tr_strvStartsWith in tr_unix_address::from_string()
were backwards as well, leading to the check failing for valid
socket addresses.
Co-authored-by: LaserEyess <LaserEyess@users.noreply.github.com>
2023-06-24 13:57:20 -05:00
Charles Kerr
df1adf0e0f
chore: revert small buffer ( #5654 )
...
* Revert "perf: use libsmall in libtransmission, pt 3 (#5653 )"
This reverts commit 3b03494580
.
* Revert "perf: use small in libtransmission (#5650 )"
This reverts commit 559f6f0332
.
2023-06-22 18:42:48 -05:00
tearfur
41cfdce6fd
refactor: replace some C idioms with C++ ones ( #5656 )
...
* tidy up legecy practices
* remove undefined std::ignore usage
* avoid extra function stack level in daemon.cc
2023-06-22 17:58:16 -05:00
tearfur
699b3d8416
perf: use a std::map to store peers in `tr_swarm` ( #5645 )
2023-06-22 15:21:44 -05:00
tearfur
b562b2de4b
feat: new default piece size calculation for transmission-create ( #5615 )
2023-06-22 11:50:57 -05:00
Charles Kerr
3b03494580
perf: use libsmall in libtransmission, pt 3 ( #5653 )
...
* refactor: use BufferReader, BufferWriter in peer-socket
* feat: expose GrowthFactor in tr-buffer
* perf: choose better defaults for the peer message buffers
* chore: sync tests
* refactor: use small::map in ActiveRequests::Impl
2023-06-22 00:24:42 -05:00
Charles Kerr
559f6f0332
perf: use small in libtransmission ( #5650 )
...
* refactor: reimplement Buffer using small
* refactor: use SmallBuffer in announcer-udp
* refactor: use SmallBuffer in variant-json
* refactor: use SmallBuffer in variant-benc
* refactor: use SmallBuffer in handshake
* refactor: use SmallBuffer in peer-msgs
* refactor: delete move semantics on stack-based buffers
2023-06-21 22:41:09 -05:00
tearfur
40e80989b2
encode `&key=` as fixed-width 8-digit hex ( #5652 )
2023-06-21 11:53:06 -05:00
Charles Kerr
432fc9bafc
refactor: add libsmall dependency ( #5649 )
...
* refactor: add small dependency
* refactor: use small in variant.cc
* refactor: use small in cache.h
2023-06-20 22:50:36 -05:00
tearfur
548f840b8d
fixup: refactor handshake objects to use socket address as key as well ( #5644 )
2023-06-20 13:10:26 -05:00
tearfur
280dea4e33
add support for sending the `ipv4` parameter during ltep handshake ( #5643 )
2023-06-20 10:51:07 -05:00
tearfur
64261685d8
fix: use both address + port together as a key for peer lookup ( #5619 )
2023-06-19 20:26:39 -05:00
LaserEyess
23a52fa1c5
fixup: dedup tr_rpc_address with tr_address ( #5523 )
...
* fixup: dedup tr_rpc_address with tr_address
tr_rpc_address was duplicating a lot of work that tr_address was doing a
lot better. Fall back to using tr_address for ipv4/ipv6 connections and
make a tr_unix_addr for handling unix sockets.
* remove unnecessary functions
2023-06-19 15:51:20 -05:00
Василий Чай
ddac05954b
fix: return error when renaming into existing file ( #5563 )
2023-06-19 00:30:55 -05:00
tearfur
b8ff35c4ce
handle IPv6 NAT during LTEP handshake ( #5565 )
...
* fix: peer handshake reported wrong ipv6 address
https://github.com/transmission/transmission/issues/5542#issuecomment-1556710922
2023-06-18 19:06:31 -05:00
Charles Kerr
fd583ac878
deps: bump libfmt to v10.0.0 ( #5635 )
...
seems to be semver/minor safe for our API use
Fixes #5511 .
Possibly fixes #5627 .
2023-06-18 17:36:39 -05:00
tearfur
802619e174
fix: fixes and improvements to global IP query ( #5510 )
2023-06-11 18:27:01 -05:00
Charles Kerr
c8e84f870b
ci: remove "brew update" step ( #5606 )
2023-06-11 16:28:43 -05:00
Mike Gelfand
8ca02b8f28
Avoid locale use in `tr_truncd()` ( #5587 )
...
`tr_parseNum<>()` is implemented with `fast_float::from_chars()`, and
the latter is documented as "expecting a locale-indepent format
equivalent to what is used by std::strtod in the default ("C") locale".
To accomodate locale independent number parsing, switch back to
locale-independent number formatting in `tr_truncd()` by both removing a
`L` format specifier from `fmt::format_to_n()` call and using a fixed
"." decimal separator when truncating the value.
2023-06-10 17:09:18 -05:00
Daniel Kamil Kozar
c1c27f3da0
Expose files' begin and end pieces via RPC ( #5578 )
...
* Expose files' begin and end pieces via RPC
This adds two arguments, `beginPiece` and `endPiece`, for each of the entries
in the `files` array of the RPC's `torrent-`get` method.
The point is to allow RPC clients to display a file's completion progress as
piece-based in addition to byte-based.
2023-06-05 13:15:32 -05:00
Cœur
87472672a6
build: fix xcode build ( #5521 )
2023-05-19 23:17:24 -05:00
Charles Kerr
e171cbae9c
refactor: move Buffer::add_socket() to BufferWriter::add_socket() ( #5543 )
2023-05-19 23:06:26 -05:00
Charles Kerr
ae888ef08e
perf: avoid map insertion for complete blocks received ( #5540 )
2023-05-19 18:36:07 -05:00
Charles Kerr
52b03c2489
refactor: migrate methods to buffer reader ( #5533 )
2023-05-18 16:56:29 -05:00
Charles Kerr
4fd5f3a490
refactor: use reserve_space() in peer-io ( #5532 )
2023-05-17 13:57:27 -05:00
Charles Kerr
b9698210ef
refactor: restore part of Buffer::reserve_space() ( #5529 )
2023-05-16 21:46:41 -05:00
Charles Kerr
2cf9678737
fix: revert buffer reserve space ( #5528 )
...
* Revert "refactor: use BufferReader, BufferWriter as function args (#5518 )"
This reverts commit c2d48a7d11
.
* Revert "fixup! refactor: add BufferReader, BufferWriter::reserve_space() (#5513 )"
This reverts commit b08e17beef
.
* Revert "refactor: add BufferReader, BufferWriter::reserve_space() (#5513 )"
This reverts commit 51fd7056ba
.
2023-05-14 17:24:42 -05:00
Charles Kerr
e88bf946e1
perf: avoid extra work in read_vc() ( #5527 )
2023-05-14 15:01:04 -05:00
Charles Kerr
8a1a6dba49
perf: avoid extra heap alloc in block cache ( #5522 )
2023-05-13 14:16:00 -05:00
Charles Kerr
69fc149f07
fix: avoid unintentional map insertions in ActiveRequests::count() ( #5520 )
2023-05-12 20:18:26 -05:00
Charles Kerr
7cabeff24f
perf: use std::bitset instead of tr_bitfield in incoming_piece_data ( #5519 )
...
Since max size is small and known at compile time, we can avoid extra heap allocations
2023-05-12 19:31:59 -05:00
Charles Kerr
c2d48a7d11
refactor: use BufferReader, BufferWriter as function args ( #5518 )
2023-05-12 18:10:08 -05:00
Charles Kerr
b08e17beef
fixup! refactor: add BufferReader, BufferWriter::reserve_space() ( #5513 )
...
chore: remove tracer fmt::print() statements
2023-05-12 11:47:01 -05:00
Charles Kerr
51fd7056ba
refactor: add BufferReader, BufferWriter::reserve_space() ( #5513 )
2023-05-12 11:15:15 -05:00
Charles Kerr
c61d8b7cf7
refactor: rename tr_tracker_view.host to .host_and_port for clarity ( #5508 )
2023-05-08 20:28:10 -05:00
Charles Kerr
0d3b321bac
refactor: use snake_case for libtransmission class methods ( #5497 )
2023-05-05 23:11:05 -05:00
tearfur
d65f9329cd
refactor: followup/cleanup of `tr_global_ip_cache` PR ( #5498 )
...
* remove tr_session::bindAddress()
* replace tr_net_hasIPv6 with tr_session::has_ip_protocol()
* update comment
2023-05-05 22:05:28 -05:00
kmikita
693d202a64
refactor: save stats.json periodically and when closing session #5476 ( #5490 )
2023-05-05 15:33:23 -05:00
tearfur
474a30ab2d
feat: add global IP cache, fix UDP connection failure warnings
2023-05-05 12:17:40 -05:00
Gary Elshaw
2f1d5a225c
fix: comment typos in libtransmission ( #5473 )
2023-04-30 13:29:29 -05:00
Mike Gelfand
e8fcb025a0
fix: use user-preferred locale ( #5444 )
...
* Use user-preferred locale
Previous fix adding `L` format specifier was correct but only fixed half
of the problem, as C++ locale is set up to be "C" by default. GTK client
used to call `setlocale(LC_ALL, "")` to set up user-preferred locale
which only affected C functions and `std::locale` (used by libfmt) was
unaware of those changes.
Apply the fix to all the binaries since they're all doing some sort of
output to the user and calling libtransmission helpers, as well as using
libfmt directly.
* Improve libtransmission's json-test
Set the locale C++ way to avoid any sort of inconsistencies, and also
restore it to the old one once finished testing.
* Improve transmission-show test runner script
Quote outputs to avoid CMake error about `message()` being called with
no arguments. Capture stderr to the same output file. Fallback to `git
diff` if `diff` wasn't found. A few other minor changes.
2023-04-27 09:10:33 -05:00
Charles Kerr
47667bab8d
fix: bug that prevented providing the final metadata piece ( #5460 )
...
Fixes bug in implementation of BEP 9
Xref: https://www.bittorrent.org/beps/bep_0009.html
2023-04-26 19:40:49 -05:00
Charles Kerr
1b6b85989c
feat: add generic favicon_cache class for reuse between Qt, GTK app ( #5294 )
2023-04-22 21:11:16 -05:00
Charles Kerr
9d2507c7e3
refactor: snake_case in libtransmission class methods ( #5428 )
2023-04-22 20:25:55 -05:00
Charles Kerr
7e7d8137a0
fixup! feat: Add BufferWriter class ( #5154 ) ( #5437 )
2023-04-22 18:13:39 -05:00
Charles Kerr
9f8a7a656e
fix: Buffer::Buffer(Buffer&&) bug ( #5435 )
2023-04-22 16:10:09 -05:00
Charles Kerr
ce4ffc3bdb
fix: 5422 use-after-free in peerMsgs::canRead ( #5425 )
2023-04-20 13:18:53 -05:00
Charles Kerr
3044c14b10
perf: in Buffer::Iterator, defer evbuffer API calls ( #5420 )
2023-04-19 16:00:30 -05:00
Charles Kerr
f2aa3e197b
refactor: add tr_sys_dir_get_files() ( #5412 )
2023-04-18 16:23:20 -05:00
Charles Kerr
a8e01ac38d
fix: minor warnings ( #5409 )
...
* chore: fix readability-qualified-auto warnings
* chore: fix clang-analyzer-core.uninitialized.Branch warning
* fix: collision of key 'ERROR' in transmission-qt
* chore: silence -Wshadow warning
* chore: silence warning C4100: 'iter': unreferenced formal parameter
* chore: fix warning C4127: conditional expression is constant warning
2023-04-17 23:11:09 -05:00
Charles Kerr
7d86d67bc7
chore: prefer fmt/core.h over fmt/format.h ( #5404 )
2023-04-16 15:34:19 -05:00
Charles Kerr
3af9645615
refactor: add tr_address::is_any() ( #5398 )
...
As suggested by @tearfur
Xref: https://github.com/transmission/transmission/pull/5329#discussion_r1166236165
2023-04-15 19:30:20 -05:00
Kyle Sanderson
06c784f639
fix: uninitialized session_id_t values ( #5396 )
2023-04-15 00:07:07 -05:00
Charles Kerr
e91af26923
perf: remove staging step for outbound peer msgs ( #5394 )
...
Write non-piece peer messages directly to the peer's outbuf instead of
waiting for a pulse() message to refill it. This can help with latency
sending messages out.
Change the semantics of `tr_peerIo::get_write_buffer_space()`: this is
now interpreted as the preferred minimum size, rather than the maximum.
It's OK to enqueue an outgoing piece message as long as there's _some_
space left, even if the message is larger than that space.
Build peer messages with template fold expressions. This lets us move
all the message-building to a single function and add some sanity checks
to the outgoing messages.
2023-04-14 19:31:09 -05:00
Charles Kerr
9158ae7126
feat: add tr_bitfield::intersects() ( #5155 )
2023-04-14 18:45:46 -05:00
Charles Kerr
ed4919a4f4
feat: Add BufferWriter class ( #5154 )
2023-04-14 17:08:01 -05:00
midzer
68e965aa28
perf: pass by reference ( #4876 )
2023-04-14 17:06:26 -05:00
Charles Kerr
d445c7f061
fix: crash in peer stats ( #5279 )
2023-04-14 16:03:08 -05:00
Charles Kerr
d72cb67cfb
chore: include directory name in libtransmission #includes ( #5308 )
2023-04-14 14:33:23 -05:00
Pierre Dubouilh
ebfba686b0
feat: sequential download ( #4795 )
2023-04-14 11:47:54 -05:00
Cœur
afa9f64feb
refactor: align tr_formatter_speed_KBps with `stringForSpeed: kb: mb: gb:` ( #5108 )
2023-04-14 10:36:34 -05:00
Charles Kerr
63421489fe
refactor: tr_sys_dir_open() takes a std::string_view ( #5380 )
2023-04-14 09:31:46 -05:00
Charles Kerr
0e2b8d721c
fix: only torrent metainfo display-name as a fallback ( #5378 )
...
Fixes #5347 .
2023-04-12 17:26:43 -05:00
Charles Kerr
e33d9536ef
fix: return success on RPC add-torrent duplicate ( #5370 )
...
Keep Transmission 3's behavior to avoid unannounced API change
2023-04-12 13:37:04 -05:00
Cœur
91717fe91d
fix: potential NSString leak in tr_strv_convert_utf8()
2023-04-11 17:36:22 -05:00
Charles Kerr
c76cb4db51
fix: silence torrent-metainfo warnings for cross_seed_entry, uid ( #5365 )
2023-04-10 11:07:43 -05:00
tearfur
931beba56f
fix: set log level before constructing tr_session ( #5345 )
2023-04-03 15:37:28 -05:00
tearfur
e68c72daa4
fix: tr_net_hasIPv6() ( #5312 )
2023-03-28 13:41:07 -05:00
tearfur
85a00625dc
fix: intermediate fix for HTTP announce behaviour affected by `bind-address-ipv*` ( #5296 )
2023-03-28 12:59:42 -05:00
Mike Gelfand
a216bd7cec
Use locale-dependent decimal separators for user-visible numbers ( #5288 )
...
This includes percents, ratios, sizes, speeds, etc. coming from shared
formatting helpers. Previously based on sprintf-like functions using
locale, now using libfmt which doesn't use locale by default and needs
to be instructed to do it explicitly.
2023-03-23 19:48:45 -05:00
Cœur
3e97d0b9c2
fix: The right operand of '<' is a garbage value ( #5285 )
2023-03-23 12:05:11 -05:00
Charles Kerr
d63165e8a4
perf: fix wishlist cpu load regression, pt. 2 ( #5273 )
2023-03-22 10:24:10 -05:00
Charles Kerr
25f38d5ff3
fix: wrong tier value in torrent get tracker stat response ( #5274 )
2023-03-21 20:23:08 -05:00
Charles Kerr
58ce7bd437
fix: 4.0.2 wishlist CPU perf regression pt. 1 ( #5266 )
2023-03-20 21:08:16 -05:00
Cœur
c60bb5b834
fix: crash when magnet dn isn't utf-8 ( #5244 )
2023-03-19 10:36:16 -05:00
Charles Kerr
5cc3bf8a97
fix: generate peer-id on launch ( #5233 )
2023-03-15 20:53:48 -05:00
Charles Kerr
3aeefec203
chore: remove unused header includes ( #5227 )
2023-03-14 18:36:15 -05:00
Charles Kerr
a87d39f3bd
fix: filter out peers with port 1 from DHT peer lists. ( #5218 )
2023-03-13 19:27:47 -05:00
Charles Kerr
6224b60728
fix: wrong error message when writing to incomplete dir ( #5217 )
2023-03-13 16:20:39 -05:00
Colin B
59a157ebde
feat: restore support for nonstandard `path.utf-8` ( #3454 )
2023-03-13 13:58:59 -05:00
Charles Kerr
dabd29f2b2
fix: std::clamp() assertion failure in maxAvailableReqs() ( #5203 )
2023-03-11 22:25:21 -06:00
Charles Kerr
900281eb1c
fix: check tr_ctorSetFoo() return values before adding torrent via RPC ( #5202 )
2023-03-11 19:44:54 -06:00
Charles Kerr
86fd89fff4
fix: remove interest strategy code that could contribute to oscillating download speeds. ( #5176 )
2023-03-10 13:21:51 -06:00
Charles Kerr
b354337720
ci: check for clang tidy errors in libtransmission ( #5188 )
2023-03-10 00:23:22 -06:00
reardonia
9c436d87dd
fix: torrentGet.wanted RPC breaking change in [4.0.0..4.0.1] ( #5170 )
2023-03-07 19:44:25 -06:00
Charles Kerr
033d698306
fix: parsing of ipv6 tracker announce URLs ( #5174 )
2023-03-07 12:19:12 -06:00
Charles Kerr
39e3e1d87b
fix: increase priority of first and last piece of each file ( #5167 )
...
The first and last pieces of a file generally include information needed
by preview generators, so prioritizing those pieces makes life easier
for users or tools that look at files while they're being downloaded.
This worked in 3.00 but isn't present in 4.0.0.
2023-03-06 15:50:19 -06:00
reardonia
56c1bb2a9e
fix: publish 'leechers' iff it was in tracker response ( #5164 )
2023-03-06 09:22:40 -06:00
Charles Kerr
b2b0f0db39
fix: crash in curl_easy_pause() ( #5161 )
2023-03-05 23:42:52 -06:00
Charles Kerr
47001a394e
fix: 7f9ef4730
use-after-free in peerMsgs::canRead ( #5152 )
2023-03-05 11:50:11 -06:00
Charles Kerr
7f9ef4730e
fix: assertion failure in readBtPiece() ( #5097 )
2023-03-03 17:43:51 -06:00
Daniel Kamil Kozar
848212eea1
fix: escaped representation of non-BMP characters when generating JSON ( #5096 )
2023-03-02 00:55:16 -06:00
Charles Kerr
d3273504bd
fix: 5053 old torrent files keep appearing ( #5117 )
2023-03-01 20:12:19 -06:00
Charles Kerr
211e3fc985
fix: always add `announce` key even when including announce-list ( #5106 )
2023-03-01 13:10:20 -06:00
Cœur
63653b4831
fix: recheckCompleteness on setDownloadDir ( #5060 )
2023-02-28 08:51:11 -06:00
Charles Kerr
1a276fb145
fix: 4.0.0 bookkeeping of protocol overhead when receiving peer messages ( #5091 )
2023-02-27 20:25:15 -06:00
Charles Kerr
f53e58c8bd
fix: 4.0.0 regression that broke speed limits for utp peers ( #5086 )
2023-02-27 15:03:45 -06:00
Charles Kerr
ac319321b5
fix: assertion failure in std::clamp() when called from rechokeDownloads() ( #5080 )
2023-02-27 11:59:00 -06:00
HAkos1
238fd96041
fix: don't log full path, only the filename of source file ( #5055 )
...
Co-authored-by: Akos Horvath <koma@koma.sh>
2023-02-27 10:02:58 -06:00
Charles Kerr
47fd150bab
fix: some torrents think they are magnets ( #5025 )
2023-02-25 07:11:19 -06:00
Mike Gelfand
81f8ceb0f9
Limit in-kernel file copying to 2 GiB blocks at a time ( #5039 )
...
This reportedly helps with copying to cifs target where
`copy_file_range()` would sometimes return `EINVAL` for no apparent
reason when copying large files. Extending the limit to `sendfile64()`
to avoid similar issue there, if it exists.
Overall, copying at most 2 GiB at a time will result in more syscalls
but shouldn't affect the performance gain in any noticeable way.
2023-02-25 03:15:17 +00:00
wiz78
450e98fd91
fix: TR_TIME_LOCALTIME value in torrent scripts ( #5006 )
2023-02-23 07:18:29 -06:00
Charles Kerr
9d1a141482
fix: cannot build with clang on Windows ( #4978 )
...
Fixes #4977 .
2023-02-21 11:08:28 -06:00
Charles Kerr
ed8133520f
fix: blocklists allocate more memory than they need ( #4953 )
2023-02-19 09:20:23 -06:00
Charles Kerr
e29064023f
fix: try utp connection first; fix utp timeout issues. ( #4897 )
2023-02-18 10:03:59 -06:00
Charles Kerr
adf5051d46
fix: revert tr_torrentStat() acquires a session thread lock ( #4571 )
...
This reverts commit e4b480ecd4
.
2023-02-17 23:11:24 -06:00
Mike Gelfand
b3abadf8ba
Bump bundled libutp to rollback anonymous unions fix ( #4877 )
2023-02-18 02:59:15 +00:00
goldsteinn
1e5546280e
fix: Remove faulty `popcnt` features checks for MSVC [ #4872 ] ( #4886 )
...
The `popcnt` feature checks weren't actually checking the ISA feature
or cpuid. This caused an illegal instruction exception on x86 hardware
that doesn't support `popcnt` when compiled with MSVC.
Since MSVC doesn't support any x86 ISA defines, the only way to check
for `popcnt` is with cpuid. Since this is a tiny inline function,
dynamic dispatch is likley not worth it so just removing the MSVC
for `popcnt`. MSVC will now fallback to the generic implementation.
2023-02-18 02:11:56 +00:00
Cœur
9b69c7d5ff
Don't force fetch metainfo at startup and new torrents. ( #4895 )
2023-02-14 22:19:47 -06:00
Charles Kerr
4461aa68d9
fix: handle block fragments that arrive from peers out-of-order ( #4890 )
2023-02-14 13:50:28 -06:00
Charles Kerr
9d91d1e969
fix: checksum of pieces that don't align on block boundaries ( #4880 )
2023-02-13 20:57:20 -06:00
Charles Kerr
a982c96518
fix: assertion failed leftUntilDone <= sizeWhenDone ( #4879 )
2023-02-13 19:51:23 -06:00
Charles Kerr
f551b4adbf
fix: magnet links are always paused when added ( #4856 )
2023-02-13 12:33:33 -06:00
Thomas Klausner
62a60b4ea4
fix: link libquota on NetBSD to fix FTBFS ( #4863 )
2023-02-13 12:04:14 -06:00
Charles Kerr
a2faaabe69
chore: remove invalid assertion test ( #4860 )
...
Fixes #4078 .
2023-02-12 18:38:18 -06:00
Cœur
649fd4d0d2
fix: do not lose magnet links when upgrading from tr3 to 4 ( #4840 )
2023-02-12 18:10:54 -06:00
Cœur
0be7091eb1
Revert "fix: remove abort() call from tr_assert_message() ( #4696 )" ( #4851 )
...
This reverts commit 0493542f62
.
2023-02-12 08:16:20 -06:00
Charles Kerr
b7099270b6
fix: tr_swarm order of destruction ( #4847 )
2023-02-12 00:30:30 -06:00
Charles Kerr
8cee2f952e
fix: port forwarding flag not saved between sessions ( #4842 )
2023-02-11 20:49:16 -06:00
Charles Kerr
ba679a814f
fix: try a tcp peer connection before a utp one. ( #4826 )
2023-02-11 16:14:32 -06:00
Julien
4b8cfa2e57
chore: update copyrights to 2023 ( #4834 )
2023-02-11 14:49:42 -06:00
Berbe
b155374137
fix: add nullptr dereference safguard in announcer code
2023-02-11 08:25:28 -06:00
Daniel Kamil Kozar
e0753fedb9
fix: put "private" and "source" inside the metadata "info" key ( #4809 )
2023-02-10 20:33:24 -06:00
Charles Kerr
d0b148c033
fix: misleading error message when resume file is missing ( #4799 )
...
Fixes #4712 .
2023-02-10 14:01:39 -06:00
Charles Kerr
0c582c6d7e
fix: race condition in RPC ( #4725 )
2023-02-06 10:42:37 -06:00
Charles Kerr
6c99e95463
fix: ensure ipv4 for udp announces. ( #4723 )
...
This is an interim fix to unblock 4.0.0. See ticket 4719 for details.
2023-02-05 23:31:10 -06:00
SweetPPro
1e988c9ce4
fix magnet link start logic ( #4528 )
2023-02-02 00:19:20 -06:00
Charles Kerr
0493542f62
fix: remove abort() call from tr_assert_message() ( #4696 )
2023-02-01 18:19:40 -06:00
Cœur
61fa6f6088
Fix WebUtilsTest.urlParse and psl_builtin for Xcode ( #4642 )
2023-01-31 23:51:04 -06:00
Dmitry Antipov
52d49b84eb
perf: optimize the only block case in Cache::writeContiguous() ( #4679 )
2023-01-30 12:04:40 -06:00
Charles Kerr
e35d65bf4c
fix: call setHasPiece(piece, false) on checkPiece fail ( #4665 )
2023-01-29 19:46:26 -06:00
Charles Kerr
0e5f7f86d7
fix: coverity warnings ( #4687 )
...
* fix: minor tr_error leak warning in tests
* fix: socket leak in tr_globalIPv6()
2023-01-29 16:49:59 -06:00
Charles Kerr
724a0f48f0
fix: clang-tidy header warnings ( #4686 )
2023-01-28 17:58:20 -06:00
Charles Kerr
93db8f088a
fix: cppcoreguidelines-pro-type-cstyle-cast ( #4685 )
...
* fix: libtransmission cppcoreguidelines-pro-type-cstyle-cast
* fix: libtransmission cppcoreguidelines-avoid-do-while
* refactor: inline static class fields
* fix: libtransmission cppcoreguidelines-avoid-reference-coroutine-parameters
* fix: announcer.cc cppcoreguidelines-narrowing-conversions
2023-01-28 15:26:23 -06:00
Charles Kerr
948f597d15
refactor: buffer snake case ( #4682 )
2023-01-27 20:12:09 -06:00
Charles Kerr
c75f9a4a7a
refactor: tidy libtransmission symbol visibility ( #4680 )
2023-01-27 14:25:08 -06:00
Charles Kerr
568b23374c
chore: don't warn on ECONNREFUSED to peer sockets. ( #4678 )
...
Fixes #1031 .
2023-01-27 00:00:00 -06:00
Charles Kerr
5a8aab2c2d
fixup! fix: omit curlopt options if curl is old ( #4675 )
2023-01-26 16:03:11 -06:00
Charles Kerr
b1744d513e
fix: omit curlopt options if curl is old ( #4675 )
2023-01-26 12:52:32 -06:00
Charles Kerr
aabf1b7e0a
fix: remove CURL_VERSION_BITS macro ( #4673 )
...
Fixes #4671 .
2023-01-26 11:25:53 -06:00
anarcat
331e1699bc
add remote HTTPS support to Qt GUI ( #4622 )
2023-01-26 00:24:04 -06:00
Charles Kerr
c81d0b130c
refactor: add tr_error_set_from_errno() ( #4662 )
2023-01-25 12:20:10 -06:00
Charles Kerr
977a190646
fix: msvc warnings ( #4651 )
...
* fix: C4189 local variable is initialized but not referenced
* fix: C4706 assignment within conditional expression
* fix: C4018 signed/unsigned mismatch
* fix: warning C4996 High-DPI scaling is always enabled.
* fix: C4996: QApplication::fontMetrics() is deprecated
eed5514eaf
2023-01-23 19:24:52 -06:00
Cœur
c89edcd1f6
underscores in documentation comments should be code escaped ( #4639 )
2023-01-23 10:26:11 -06:00
Charles Kerr
7367d465b5
style: use the new paragraph comment style everywhere ( #4634 )
2023-01-22 13:21:30 -06:00
Charles Kerr
0f4077a445
fix: announcer not updated after torrent announce list edited ( #4635 )
2023-01-22 11:53:08 -06:00
Charles Kerr
43bb4bc1c8
refactor: remove unused declarations from tr-macros.h ( #4630 )
2023-01-21 17:53:58 -06:00
Charles Kerr
b5c9e3d697
fix: clang-tidy warnings in libtransmission/transmission.h ( #4628 )
2023-01-21 13:49:43 -06:00
InsaneKnight
8755207dcf
fix: semantics for tr_peer_socket dtor, move ctor, and move assignment
...
Default implementations for these functions may leak sockets during
destructing and moving.
2023-01-20 02:28:56 -06:00
Dmitry Antipov
770da79cf3
daemon: check whether log file is regular and may be flushed ( #4612 )
2023-01-18 12:46:57 -06:00
Charles Kerr
33a7d131b4
feat: add setting to choose between lazy-verify or full verify ( #4611 )
2023-01-18 02:09:29 -06:00
Charles Kerr
3bc1a1be04
fix: when setting Accept-Encoding to identity, disable curl decoding. ( #4609 )
...
Also, change `CURLOPT_ENCODING` usage to `CURLOPT_ACCEPT_ENCODING`.
This key was renamed upstream in 7.21.6; our CURL_MINIMUM is 7.28.0.
Fixes #753 .
2023-01-17 16:07:10 -06:00
Cœur
e4c5981545
feat: log which tracker is giving a warning ( #4544 )
2023-01-17 01:46:43 -06:00
Charles Kerr
acd5d28fb1
fix: handle webseed servers that do not serve partial content ( #4601 )
...
Fixes #4595 .
2023-01-16 15:08:25 -06:00
Dmitry Antipov
bd461e1081
refactor: use std::function for announcer callback ( #4575 )
2023-01-15 12:37:54 -06:00
Dmitry Antipov
acbf483bae
refactor: switch to C++11-compatible tr_wait() from tr_wait_msec() ( #4576 )
2023-01-12 12:03:14 -06:00
Dmitry Antipov
a5c7b65869
perf: avoid extra time() call ( #4577 )
2023-01-11 09:26:58 -06:00
Dmitry Antipov
0af121004c
chore: remove unused callback arg ( #4573 )
2023-01-10 14:47:53 -06:00
Charles Kerr
e4b480ecd4
fix: tr_torrentStat() acquires a session thread lock ( #4571 )
2023-01-10 09:05:31 -06:00
Charles Kerr
2b89ee508b
feat: change 403 error message ( #4567 )
2023-01-09 10:52:19 -06:00
Charles Kerr
8b1290c895
build: remove explicit iconv dependency in libtransmission ( #4565 )
2023-01-08 22:21:31 -06:00
Charles Kerr
d9278bd167
refactor: misc-use-anonymous-namespace pt. 5 ( #4552 )
2023-01-07 16:55:00 -06:00
Charles Kerr
cb10255ef1
refactor: misc-use-anonymous-namespace pt. 4 ( #4550 )
2023-01-07 12:58:16 -06:00
Charles Kerr
9678b26984
refactor: misc-use-anonymous-namespace pt. 3 ( #4539 )
2023-01-07 08:27:54 -06:00
Charles Kerr
cc4cbff049
refactor: misc-use-anonymous-namespace pt. 2 ( #4538 )
2023-01-04 22:16:22 -06:00
Charles Kerr
634b1e8fc1
fixup! fix: Couldnt send to IPv6 address warnings ( #4527 ) ( #4537 )
2023-01-04 18:18:22 -06:00
Charles Kerr
b47c34726b
refactor: tr_peer_socket keeps track of peer count ( #4534 )
2023-01-04 15:37:55 -06:00
Charles Kerr
bd61bd2558
refactor: use anonymous namespace in rpc-server.cc ( #4530 )
...
refactor: use anonymous namespace in rpcimpl.cc
2023-01-03 22:24:12 -06:00
Charles Kerr
ee0877c99d
refactor: fix readability-redundant-string-cstr warnings found by clang-tidy-16 ( #4529 )
2023-01-03 21:43:54 -06:00
Charles Kerr
dc968892ec
fix: Couldnt send to IPv6 address warnings ( #4527 )
2023-01-03 21:12:05 -06:00
Charles Kerr
1e521b9030
fix: -Wredundant-decls warning when building with g++ ( #4526 )
2023-01-03 15:26:04 -06:00
Charles Kerr
106bcbbe7b
fix: clang-tidy-15 warnings ( #4525 )
2023-01-03 14:10:12 -06:00
Mike Gelfand
105d23c09e
Fix clang-tidy issue in `iconv` 2nd argument helper ( #4520 )
...
Since operators were intentionally implicit and we don't want to add more
`NOLINT` comments than necessary, rework the approach to deduce the argument
type instead and cast to it.
2023-01-02 22:59:53 +00:00
Charles Kerr
eb27220662
perf: avoid vector temporary in announcer-udp ( #4519 )
2023-01-02 12:41:47 -06:00
Charles Kerr
2d2a5e1ad6
refactor: more constexpr ( #4518 )
2023-01-02 11:34:36 -06:00
Mike Gelfand
57e6b06921
Modernize CMake code (ongoing refactoring) ( #4515 )
...
* Use imported CMake target for CURL
* Use imported CMake target for fmtlib
* Use imported CMake target for WideInteger
* Use imported CMake target for FastFloat
* Use imported CMake target for UtfCpp
* Use imported CMake target for Threads
* Use imported CMake target for Iconv
* Use imported CMake target for crypto backend
* Use imported CMake target for GTK
* Use imported CMake target for Qt
* Use imported CMake target for deflate
* Use imported CMake target for libevent
* Use imported CMake target for natpmp
* Use imported CMake target for miniupnpc
* Use imported CMake target for dht
* Use imported CMake target for psl
* Use imported CMake target for libutp
* Use imported CMake target for libb64
* Use include directories from libtransmission target
2023-01-02 16:23:51 +00:00
Charles Kerr
806491232b
refactor: add constexpr ( #4514 )
2023-01-01 22:43:23 -06:00
Charles Kerr
24eb6ef293
fix: use SO_REUSEADDR when binding UDP ports ( #4513 )
...
* fix: use SO_REUSEPORT when binding UDP ports
* chore: cast 3rd arg of setsockopt
2023-01-01 20:36:20 -06:00
Charles Kerr
d338eb3bdc
refactor: simplify tr_udp_core::sendto() ( #4510 )
2023-01-01 17:16:13 -06:00
Charles Kerr
47ebb3f63a
refactor: remove obsolete lightweight build option ( #4509 )
2023-01-01 16:24:12 -06:00
Mike Gelfand
bc380511db
Modernize CMake code (ongoing refactoring) ( #4507 )
...
* Reformat CMake code
* Bump minimum CMake version to 3.12
* Add target sources separately via `target_source()`
* Make `tr_win32_app_info()` add target sources on its own
* Don't use `include_directories()`
* Don't use `add_definitions()`
* Limit use of `add_compile_options()`
* Move VDKQueue target declaration to a subdirectory
* Add `tr_disable_source_files_compile()` helper
* Add `tr_target_glib_resources()` helper
* Add `tr_gettext_msgfmt()` helper
* Enable AUTOUIC for Qt client
* Enable AUTORCC for Qt client
* Remove AUTO{MOC,RCC,UIC} source group overrides
* Add `tr_target_idl_files()` helper
* Move source group setup to `tr_qt_add_translation()`
* Add `tr_target_xib_files()` helper
* Prefer `target_sources()` to intermediate variables
* Use explicit visibility versions of `target_*()` commands
* Prefer genexes to conditions in `target_*()` commands
* Add `tr_allow_compile_if()` helper
* Leave only top-level `project()`, remove the rest
* Minor fixups
* Fixup Mac QL plugin install
* Fixup IDE target folders and source groups
2023-01-01 19:49:48 +00:00
Charles Kerr
453836f324
refactor: make announce key param unique per-torrent ( #4508 )
2023-01-01 13:22:50 -06:00
Charles Kerr
611b181a99
feat: add `yourip` to extension protocol handshake ( #4504 )
...
* feat: add yourip to the extension protocol handshake
2023-01-01 12:20:46 -06:00
Charles Kerr
db38f9aa2c
fix: remove announce ipv4 ipv6 query params ( #4502 )
2022-12-31 13:13:59 -06:00
Charles Kerr
53f5a33616
fix: fix omitted fmt call ( #4494 )
2022-12-31 10:49:27 -06:00
Mike Gelfand
f7edcfcb2a
Drop obsolete CyaSSL and PolarSSL crypto backends ( #4495 )
...
* Drop support for CyaSSL (keep WolfSSL)
* Drop support for PolarSSL (keep MbedTLS)
2022-12-29 22:38:04 +00:00
Charles Kerr
2b90a5fd55
refactor: possible FTBFS fix on arm7 ( #4492 )
...
* refactor: possible FTBFS fix on arm7
* chore: remove tr_rand_int_weak() from crypto-test-ref
* refactor: move tr_rand_int() to header
2022-12-29 10:30:03 -06:00
Charles Kerr
5ce503f1ab
refactor: udp_core constructor ( #4469 )
...
* refactor: udp_core constructor
* refactor: invert dependency between tr_session.publicAddress() and tr_globalIPv6()
2022-12-28 02:03:35 -06:00
Mike Gelfand
5fd0aff818
Automatically (re)order include directives (GTK client) ( #4475 )
...
* Automatically (re)order include directives (GTK client)
Include our headers first to ease IWYU enforcement.
* Fix includes missing from headers (GTK client)
* Fix build on Mac after includes reordering
2022-12-26 21:13:21 +00:00
Charles Kerr
ab9e971903
refactor: tr_globalIPv6() returns a std::optional<tr_address> ( #4464 )
2022-12-25 07:55:51 -06:00
Charles Kerr
a3f561bcc0
refactor: add tr_address.is_global_unicast_address() ( #4462 )
...
Was previously private to net.cc. Expose here so that we can add tests.
Add tests.
2022-12-24 18:53:50 -06:00
Charles Kerr
1402cb2949
refactor: add TR_CONSTEXPR20 to make future C++20 migration easier ( #4457 )
2022-12-23 15:21:40 -06:00
Cœur
559b759ea0
Fix tr_torrent_view incorrectly returning is_folder false for single files in a single folder ( #4454 )
2022-12-23 13:52:16 -06:00
Cœur
3cee8bae36
Fixed crash on exit while downloading from webseed ( #4451 )
2022-12-23 11:34:08 -06:00
Charles Kerr
14a3d01e45
fix: sonarcloud ( #4453 )
2022-12-23 10:56:27 -06:00
Charles Kerr
a1892f2c7c
fix: 4.0.0-beta.2 regression transmission-show --scrape did not exit cleanly ( #4447 )
2022-12-23 08:03:26 -06:00
Charles Kerr
07a5e560b7
fixup: peer counts ( #4445 )
2022-12-22 17:43:36 -06:00
Charles Kerr
4549cc74a0
refactor: add tr_torrent::do_idle_work() ( #4434 )
2022-12-21 17:21:28 -06:00
Charles Kerr
c74ac4f4ed
perf: cache the peer, atom count instead of always recomputing it ( #4431 )
2022-12-21 12:07:40 -06:00
Charles Kerr
092d411663
refactor: tr_rand_buffer(), tr_rand_int() again ( #4415 )
2022-12-21 09:58:32 -06:00
Charles Kerr
e17da3e19e
refactor: xunused ( #4416 )
...
* chore: remove unused function gtr_combo_box_new_enum()
* chore: remove unused function gtr_priority_combo_new()
* chore: remove unused function tr_logLevelToKey()
* refactor: remove unused tr_sessionGetDeleteSource()
* refactor: remove unused peer_atom::isValid()
2022-12-20 18:48:36 -06:00
Charles Kerr
1e734f36b1
perf: cache the result of thread_current_id() ( #4425 )
2022-12-20 14:59:02 -06:00
Charles Kerr
ebc93788ce
perf: make bandwidth.allocate() bidirectional ( #4424 )
...
Previously `bandwidth.allocate()` was called twice in a row, once for
upload bandwidth and once for download bandwidth.
It has some semi-expensive housekeeping though, so avoid doing that work
twice by having a single call to `bandwidth.allocate()` operate on both
up and down bandwidth.
2022-12-20 13:49:37 -06:00
Charles Kerr
5493ed644e
refactor: use tr_rand_buf() in tr_bandwidth::phaseOne() ( #4404 ) ( #4411 )
2022-12-19 17:31:24 -06:00
Charles Kerr
d290ece0c8
perf: recycle DH MSE keys iff peer was unreachable ( #4412 )
2022-12-19 16:49:26 -06:00
Reed Morrison
edfce44d35
refactor: remove unused UTP Socket code. ( #4409 )
2022-12-19 15:16:46 -06:00
Charles Kerr
5743758edd
Revert "perf: recycle Diffie-Hellman keys iff peer was unreachable ( #4408 )"
...
This reverts commit 35a0211118
.
2022-12-19 15:12:33 -06:00
Charles Kerr
35a0211118
perf: recycle Diffie-Hellman keys iff peer was unreachable ( #4408 )
2022-12-19 14:45:01 -06:00
Charles Kerr
76db72bc4b
perf: lazy-calculate torrent seconds-seeding stat ( #4393 )
2022-12-18 22:59:58 -06:00
Charles Kerr
9e6ffa351c
perf: reduce excess rand() calls in tr_bandwidth::phaseOne() ( #4404 )
2022-12-18 13:24:46 -06:00
Mike Gelfand
128cf34123
Move jsonsl and wildmat to third-party ( #4402 )
...
* Move jsonsl to third-party
This treats it as proper 3rd-party code to which our warning and style
settings don't extend.
* Move wildmat to third-party
This treats it as proper 3rd-party code to which our warning and style
settings don't extend.
* Fixup Xcode project to match new project structure
2022-12-18 19:19:07 +00:00
Charles Kerr
28b12f091f
perf: remove libtransmission::Buffer.vecs() ( #4401 )
...
Its two calls to evbuffer_peek() used 3.5% of CPU use (measured with perf
when built with RelWithDebInfo). I added vecs() so that libtransmsision
could send noncontiguous buffers via utp_writev(); but in my testing, all
the buffers being sent are contiguous and so this is unnecessary work.
2022-12-18 12:09:02 -06:00
Charles Kerr
cc4141c619
fixup: 3899255
( #4394 )
2022-12-18 11:18:25 -06:00
Cœur
4ff59b715d
Fixed implicit conversion warning: __LINE__ is a long ( #4397 )
2022-12-18 10:23:44 -06:00
Mike Gelfand
e694c3e3a0
Use C++ (not C) warning flags for GTK client ( #4395 )
...
Use the opportunity to reduce duplication.
2022-12-18 01:02:03 +00:00
Charles Kerr
3899255f1c
fix: tear down utp _after_ peer-mgr ( #4383 )
2022-12-17 14:10:10 -06:00
Charles Kerr
616e79c0a8
refactor: group related tr_peerIo methods together ( #4380 )
...
* refactor: group related functions together in the source
* refactor: make tr_peerIo::decrypt() private
* refactor: make tr_peerIo::is_seed() private
* refactor: remove unused tr_isPeerIo()
2022-12-16 17:21:01 -06:00
Charles Kerr
e6d75a4b77
refactor: tr_peerIo ( #4372 )
2022-12-16 01:23:12 -06:00
Cœur
669faf7474
Dropped tr_rand_int_weak where possible. ( #4271 )
2022-12-14 12:21:56 -06:00
Ștefan Talpalaru
b0eaec47cd
fix: re-enable port forwarding ( #4343 )
2022-12-14 01:31:48 -06:00
Charles Kerr
6f1153cae4
refactor: tr_handshake ( #4362 )
2022-12-13 19:58:39 -06:00
Cœur
4a80f800a6
Fixed crash on exit in tr_utpPacket ( #4348 )
2022-12-13 16:51:54 -06:00
Charles Kerr
2f6315b649
refactor: tr_handshake lifecycle ( #4358 )
2022-12-13 11:59:21 -06:00
Cœur
9e0b42a61d
Fixed logic in tr_wildmat ( #4353 )
2022-12-12 16:35:40 -06:00