Yat Ho
eea7d4d886
refactor: re-organise `net.h` member functions ( #5878 )
2023-08-17 22:13:01 -05:00
tearfur
a2849219f7
feat: split connectable and non-connectable pool ( #5801 )
2023-08-01 09:56:26 -05:00
tearfur
f758cb3597
refactor: avoid code duplication ( #5793 )
2023-07-17 08:56:57 -05:00
Charles Kerr
a9a6e54858
refactor: make tr_socket_address a class ( #5772 )
2023-07-12 17:29:47 -05:00
tearfur
78367c098f
perf: use `std::unordered_map` for `tr_swarm.pool` and Handshakes ( #5740 )
2023-07-11 11:57:29 -05:00
tearfur
5ec4ca550e
chore: iwyu ( #5746 )
2023-07-08 10:24:03 -05:00
tearfur
97da2adbca
fix: spelling mistake in `net.h` function call ( #5739 )
2023-07-07 20:13:02 -05:00
Charles Kerr
f83a60830a
refactor: add tr_socket_address typedef ( #5730 )
2023-07-05 11:33:50 -05:00
tearfur
8543555584
refactor: use `std::pair` to store socket addresses ( #5723 )
2023-07-04 20:29:12 -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
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
Julien
4b8cfa2e57
chore: update copyrights to 2023 ( #4834 )
2023-02-11 14:49:42 -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
9678b26984
refactor: misc-use-anonymous-namespace pt. 3 ( #4539 )
2023-01-07 08:27:54 -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
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
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
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
14a3d01e45
fix: sonarcloud ( #4453 )
2022-12-23 10:56:27 -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
0061e4f9a9
refactor: tr_address::display_name() ( #4335 )
2022-12-08 16:44:19 -06:00
Charles Kerr
36edd516aa
refactor: replace tr_boundinfo with tr_session::BoundSocket ( #4103 )
2022-11-06 10:35:48 -06:00
Charles Kerr
ee8a6bd130
refactor: simplify blocklist code ( #4086 )
2022-11-03 15:46:27 -05:00
Charles Kerr
611d36ac84
refactor: decouple session settings from the session class ( #4053 )
2022-11-01 19:32:26 -05:00
Charles Kerr
798e873b87
fix: sonarcloud warnings ( #4023 )
2022-10-24 22:13:09 -05:00
Charles Kerr
b32f3e0a24
refactor: add tr_address::toCompact() ( #4014 )
...
* refactor: add tr_address::toCompact()
* test: use the theory.org compact ipv4/6 examples in NetTest.compact4, NetTest.compact6
* refactor: add tr_address::toCompact()
* test: add toCompact, fromCompact tests
* refactor: add compact <--> sockaddr_storage conversion
2022-10-24 13:40:12 -05:00
Charles Kerr
572e1bb50f
refactor: add tr_address::fromSockaddr() ( #3964 )
...
* refactor: remove TR_DISCARD_ALIGN
* refactor: add tr_address::fromSockaddr()
2022-10-14 01:20:39 -05:00
Charles Kerr
fff4c87740
refactor: add tr_address::toSockaddr() ( #3870 )
2022-10-04 14:52:51 -05:00
Charles Kerr
228efa16e3
refactor: tr_globalIPv6() returns a std::optional<in6_addr> ( #3836 )
2022-09-21 23:59:31 -05:00
Dmitry Antipov
243ab1058d
refactor: fold session UDP innards into C++ class ( #3794 )
...
* Use std::unique_ptr to manage UDP core object
N.B.: it's no longer valid to call socket adjustments quirks from
tr_sessionSetUTPEnabled() because the corresponding object may be
not created yet. We have to create (or re-create) it explicitly
(like it's done in tr_sessionSetDHTEnabled()) or just set
is_utp_enabled_ flag of the session and assume that socket
adjustments will be done later when the object is constructed.
2022-09-21 13:25:53 -05:00
Charles Kerr
c0f29a89ea
refactor: add [[nodiscard]] ( #3793 )
2022-09-08 21:49:51 -05:00
Charles Kerr
1782dc6d7a
refactor: use readability-identifier-naming in clang-tidy ( #3784 )
2022-09-07 11:04:28 -05:00
Charles Kerr
29f57bc296
chore: iwyu headers ( #3661 )
2022-08-17 11:08:36 -05:00
Charles Kerr
dab81c1af6
fix: readability-inconsistent-declaration-parameter-name warnings in libtransmission ( #3572 )
2022-08-03 01:15:37 -05:00
Charles Kerr
d09aba0e6a
refactor: remove tr_address_from_string() ( #3524 )
...
use tr_address::fromString() instead
* refactor: use tr_address.isIPv4()
2022-07-25 17:25:55 -05:00
Charles Kerr
d164343fe7
refactor: remove tr_address_to_string() ( #3427 )
2022-07-09 20:03:40 -05:00
Charles Kerr
71bc7143b8
Revert "refactor: tr_address cleanup ( #3422 )" ( #3426 )
...
This reverts commit 9a44eeaa27
.
2022-07-09 18:44:20 -05:00
Charles Kerr
9a44eeaa27
refactor: tr_address cleanup ( #3422 )
...
* refactor: remove tr_address_compare()
* refactor: remove tr_address_to_string()
* refactor: remove NUM_TR_AF_INET_TYPES
* refactor: replace tr_sessionGetPublicAddress with tr_session::getPublicAddress()
* refactor: tr_peerIo() takes tr_address by value
* refactor: replace tr_sessionIsAddressBlocked with tr_session::isAddressBlocked()
* refactor: tr_peerMgrAddIncoming now takes tr_address by value
* refactor: replace tr_address_is_valid_for_peers() with tr_address.isValidForPeers()
* refactor: tr_netOpenPeerSocket takes tr_address by value
* refactor: remove tr_generateAllowedSet()
* refactor: setup_sockaddr takes a tr_address by value
* refactor: tr_netBindTCP() takes a tr_address by value
* refactor: tr_dhtAddNode() takes a tr_address by value
* refactor: remove tr_address_from_string()
* refactor: rename tr_address.isValidForPeers() to .isValidPeerAddress()
* refactor: replace tr_address_from_sockaddr_storage() with tr_address::fromSockaddrStorage()
* refactor: minor cleanup to tr_address::readable()
2022-07-08 13:23:41 -05:00
Charles Kerr
41cb8cbc91
refactor: add tr_address.readable ( #2962 )
2022-04-21 18:37:02 -05:00
Charles Kerr
a25da4f376
refactor: add tr_address::fromCompact() ( #2961 )
2022-04-21 17:06:00 -05:00
Charles Kerr
32f854a7cf
refactor: add a tr_port safety class ( #2952 )
2022-04-21 10:58:13 -05:00
Charles Kerr
205abbbcce
refactor: iwyu string, vector, cstdint ( #2898 )
...
* refactor: use cstdint for intX_t types
* refactor: iwyu sstring_view
* refactor: iwyu <cstring>
* refactor: iwyu <vector>
2022-04-07 20:50:26 -05:00
Charles Kerr
ca5799a4a8
refactor: annotate nodiscard, constexpr, noexcept methods ( #2862 )
2022-04-01 19:48:09 -05:00
Charles Kerr
d2f8e1d4e0
refactor: set logging levels ( #2755 )
2022-03-11 15:09:22 -06:00
Charles Kerr
1598774b8d
refactor: use std::map for handshake tracking ( #2715 )
2022-02-26 00:03:32 -06:00
Charles Kerr
e94ddc82fc
refactor: use std::string in tr_net_strerror() ( #2706 )
2022-02-24 18:53:01 -06:00
Charles Kerr
9c3acc7e8a
fixup: handle unhandled scrape/announce responses ( #2701 )
...
followup to the #2531 benc refactor
2022-02-24 07:59:58 -06:00