Commit Graph

345 Commits

Author SHA1 Message Date
Yat Ho
d2d7987553 refactor: allow explicitly queuing functions in session thread (#6406)
* feat: allow explicitly queuing functions in session thread

* refactor: rename `tr_session_thread`-related functions to snake_case
2023-12-24 08:32:14 -06:00
Charles Kerr
3cd66899fe refactor: remove prefetch (#6332) 2023-12-04 11:45:37 -06:00
Charles Kerr
2e46bad22d refactor: constify the inout module (#6328)
* refactor: move tr_preallocation_mode info tr_open_files

* refactor: remove unnecessary error nullptr check

* refactor: use snake_case for private method names in inout.cc

* refactor: extract-method get_fd() from read_or_write_bytes()

* refactor: make function args const where possible

* refactor: simplify read_or_write_bytes()

* refactor: make buflen a uint64_t in read_or_write_piece()

* refactor: move tr_torrentStop() logic from read_or_write_piece() to tr_ioWrite()

* refactor: make tr_ioFoo() functions take a const torrent

* refactor: make tr_cache::close_torrent_files() take a tor_id instead of a torrent
2023-12-02 14:16:36 -06:00
Yat Ho
5d64c860ea fix: low priority not working (#6079) 2023-11-27 19:59:26 -06:00
Charles Kerr
64d9d57363 chore: fix minor clang-tidy warnings (#6275) 2023-11-21 09:02:03 -06:00
Charles Kerr
07d96036d9 refactor: Values pt. 6 - remove deprecated API (#6250) 2023-11-14 17:23:51 -06:00
Yat Ho
90e91d6284 refactor: directly check if announcers are idle instead of using a stop counter (#6237) 2023-11-12 21:43:43 -06:00
Charles Kerr
0e85befc0f refactor: Values pt. 3 - use Speed in tr_session (#6235) 2023-11-12 12:30:37 -06:00
Charles Kerr
a575be778f refactor: Values pt. 2 - use Speed in tr_bandwidth (#6234) 2023-11-10 17:12:24 -06:00
Yat Ho
a2b547fb50 chore: iwyu (#6201) 2023-11-03 12:03:26 -05:00
Julien
8ac323d5d6 chore: removed copyright timespans in headers (#4850) 2023-11-01 16:11:11 -05:00
Charles Kerr
e54b17d92e refactor: blocklists (#6189) 2023-10-31 19:20:01 -04:00
Charles Kerr
f0e9f90782 refactor: move tr_session::getAllTorrents to tr_torrents (#6179) 2023-10-30 16:38:02 -04:00
Yat Ho
5a6f0a5623 fixup! refactor: re-organise net.h member functions (#5878) (#5933)
* fix: check if address is valid in `tr_address::is_any()`

* refactor: add static implementation of `tr_address::is_valid()`
2023-10-25 11:53:46 -04:00
Charles Kerr
c0e5e3a368 refactor: reduce coupling between tr_session and tr_peerMgr (#6151) 2023-10-23 11:34:30 -04:00
Charles Kerr
4bdb3066d8 refactor: decouple tr_verify_worker from tr_torrent (#6123) 2023-10-19 08:39:34 -05:00
Charles Kerr
6ead147620 refactor: use new tr_variant API in tr_session (#6006) 2023-09-16 08:23:35 -05:00
Yat Ho
85a120faea feat: add preferred-transport to settings.json (#5939) 2023-09-15 20:23:34 -05:00
Charles Kerr
ebb1b775af refactor: public tr_session settings API now returns tr_variants (#5983) 2023-09-07 19:05:16 -05:00
tearfur
a88b353576 chore: rename other publicAddress() functions (#5873) 2023-08-14 10:31:12 -05:00
tearfur
27f3a5b82a fix: announce LDP on listening interface (#5875)
* fix: make sure LDP announces are sent on the listening interface

* fix: add implementation for test mediator

* fix: set SO_REUSEADDR for send socket
2023-08-13 12:04:04 -05:00
tearfur
ca4cb1a675 fix/cleanups to tr_peerMsgsImpl (#5783)
* fix: correct condition to advertise pex support in ltep handshake

1. Advertise pex support regardless of whether the peer had advertised pex support. No reason to give up an opportunity to advertise pex support just because our direct peer does not support it.
2. Check if pex is enabled in global settings as well.
2023-07-14 10:51:52 -05:00
tearfur
5ec4ca550e chore: iwyu (#5746) 2023-07-08 10:24:03 -05:00
Charles Kerr
56b27057fd refactor: add lightweight observable / observer for decoupling (#5716) 2023-07-04 15:47:18 -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
tearfur
280dea4e33 add support for sending the ipv4 parameter during ltep handshake (#5643) 2023-06-20 10:51:07 -05:00
tearfur
802619e174 fix: fixes and improvements to global IP query (#5510) 2023-06-11 18:27:01 -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
tearfur
474a30ab2d feat: add global IP cache, fix UDP connection failure warnings 2023-05-05 12:17:40 -05:00
Charles Kerr
9d2507c7e3 refactor: snake_case in libtransmission class methods (#5428) 2023-04-22 20:25:55 -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
Charles Kerr
5cc3bf8a97 fix: generate peer-id on launch (#5233) 2023-03-15 20:53:48 -05:00
Julien
4b8cfa2e57 chore: update copyrights to 2023 (#4834) 2023-02-11 14:49:42 -06:00
Charles Kerr
724a0f48f0 fix: clang-tidy header warnings (#4686) 2023-01-28 17:58:20 -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
33a7d131b4 feat: add setting to choose between lazy-verify or full verify (#4611) 2023-01-18 02:09:29 -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
db38f9aa2c fix: remove announce ipv4 ipv6 query params (#4502) 2022-12-31 13:13:59 -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
Charles Kerr
ab9e971903 refactor: tr_globalIPv6() returns a std::optional<tr_address> (#4464) 2022-12-25 07:55:51 -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
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
cc4141c619 fixup: 3899255 (#4394) 2022-12-18 11:18:25 -06:00
Charles Kerr
3899255f1c fix: tear down utp _after_ peer-mgr (#4383) 2022-12-17 14:10:10 -06:00
Charles Kerr
0a69685a4e refactor: tr_address cleanup (#4338)
* refactor: move tr_tracker_http_announce() helper funcs into their own namespace

* refactor: move tr_globalIPv6() helper funcs into their own namespace

* refactor: move tr_address_is_valid_for_peers() helper funcs into their own namespace

* refactor: make tr_address_compare() a private method

* refactor: rename tr_address::isIPv4() to is_ipv4()

* refactor: use snake_case for tr_address methods

* refactor: make tr_address_is_valid_for_peers() a member function
2022-12-08 20:27:52 -06:00
Charles Kerr
e06e304cc8 refactor: fix shutdown order of utp (#4331) 2022-12-06 14:28:48 -06:00
Charles Kerr
22a3a5db25 refactor: peer-socket pt 2 (#4326)
* refactor: tr_netOpenPeerSocket() now takes a tr_address reference

* refactor: disable copy assignment, copy constructor

* refactor: move log statements to peer_socket constructor
2022-12-06 10:28:28 -06:00
Charles Kerr
f03fc9270b Fix/long shutdown crash on shutdown (#4285) 2022-11-30 13:00:34 -06:00
Charles Kerr
14dfafde32 refactor: add std::unique_ptr<evhttp> handler to utils-ev (#4261) 2022-11-28 08:07:04 -06:00