reardonia
56c1bb2a9e
fix: publish 'leechers' iff it was in tracker response ( #5164 )
2023-03-06 09:22:40 -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
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
b5c9e3d697
fix: clang-tidy warnings in libtransmission/transmission.h ( #4628 )
2023-01-21 13:49:43 -06:00
Cœur
e4c5981545
feat: log which tracker is giving a warning ( #4544 )
2023-01-17 01:46:43 -06:00
Dmitry Antipov
bd461e1081
refactor: use std::function for announcer callback ( #4575 )
2023-01-15 12:37:54 -06:00
Dmitry Antipov
0af121004c
chore: remove unused callback arg ( #4573 )
2023-01-10 14:47:53 -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
453836f324
refactor: make announce key param unique per-torrent ( #4508 )
2023-01-01 13:22:50 -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
14a3d01e45
fix: sonarcloud ( #4453 )
2022-12-23 10:56:27 -06:00
Charles Kerr
092d411663
refactor: tr_rand_buffer(), tr_rand_int() again ( #4415 )
2022-12-21 09:58:32 -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
Charles Kerr
f03fc9270b
Fix/long shutdown crash on shutdown ( #4285 )
2022-11-30 13:00:34 -06:00
Charles Kerr
595d0ac14a
refactor: add tr_announcer.startShutdown() ( #4280 )
2022-11-29 21:05:11 -06:00
Charles Kerr
4adda4dc1e
fix: sonarcloud cpp:S6005 ( #4268 )
2022-11-28 18:26:03 -06:00
Charles Kerr
feeea2649e
refactor: make tr_announcer.key a uint32_t ( #4241 )
2022-11-25 19:11:55 -06:00
Charles Kerr
8a35aa0903
refactor: add tr_rand_obj() ( #4238 )
...
* refactor: add tr_rand_obj()
There are a lot of places in the codebase where we need to populate
an integral type or a fixed-size array with random data. To do this,
we instantiate a local on the stack, fill it with tr_rand_buffer(),
and then use it.
This PR creates a helper function to make this a one-liner.
2022-11-25 15:04:37 -06:00
Charles Kerr
19bc15523f
fix: new sonarcloud, coverity, gcc warnings ( #4229 )
2022-11-23 13:47:04 -06:00
Charles Kerr
046ba32d33
fixup: heap-use-after-free in announce, scrape response on shutdown ( #4228 )
...
fixes #4222 .
2022-11-23 01:38:31 -06:00
Charles Kerr
a3772dc1fa
refactor: aggregate dh in peer io ( #4218 )
2022-11-21 18:08:06 -06:00
A Cœur
d26db72d7e
Fix "Implicit conversion loses integer precision" ( #4194 )
2022-11-21 10:19:45 -06:00
Charles Kerr
d27c4c59ce
refactor: incremental announcer refactor pt. 2 ( #4214 )
2022-11-18 23:00:25 -06:00
Charles Kerr
4cc0b77eec
refactor: incremental announcer improvements ( #4211 )
2022-11-17 20:23:54 -06:00
Charles Kerr
d61e31c419
fix: more thread safety updates ( #4136 )
...
* fix: thread safety in tr_sessionLoadTorrents()
* refactor: use std::future in tr_sessionSet()
* refactor: use std::future in tr_sessionClose()
2022-11-10 12:04:49 -06:00
Charles Kerr
611d36ac84
refactor: decouple session settings from the session class ( #4053 )
2022-11-01 19:32:26 -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
d191a04228
refactor: decouple tr_announcer_udp ( #4002 )
2022-10-21 13:15:14 -05:00
Charles Kerr
257d98545b
refactor: add tr_port_forwarding::Mediator ( #3855 )
...
* refactor: add a Mediator class to decouple tr_session and tr_port_forwarding
* refactor: add tr_port_forwarding::Mediator::privatePeerPort()
* refactor: add tr_port_forwarding::Mediator::onPortForwarded()
* chore: avoid unnecessary include of timer.h in other headers
* refactor: use a uniform timerMaker() API in mediators
2022-10-01 09:12:49 -05:00
Charles Kerr
56e0a1bda8
chore: add cppcoreguidelines-pro-type-member-init to libtransmission/.clang-tidy ( #3840 )
2022-09-23 00:51:15 -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
08ec882055
refactor: remove tr_isSession() ( #3638 )
2022-08-14 09:16:08 -05:00
Charles Kerr
5c8695025a
refactor: make tr_session.is_closing_private_ ( #3637 )
2022-08-13 20:04:36 -05:00
Charles Kerr
c66303fae2
refactor: watchdir ( #3606 )
2022-08-10 08:34:51 -05:00
Charles Kerr
b49cccbd3e
refactor: add timer class ( #3603 )
...
Wraps around evtimer so that some of the codebase can use libevent without coupling to it.
2022-08-08 17:53:20 -05:00
Charles Kerr
3428076ecd
fix: cppcoreguidelines-special-member-functions warnings in libtransmission ( #3575 )
2022-08-03 12:03:28 -05:00
Charles Kerr
18e2a04f88
refactor: make sha1, sha256 RAII safe ( #3556 )
2022-07-31 15:58:14 -05:00
Charles Kerr
b889f0c395
chore: iwyu cstring, cstdlib, optional, unordered_set ( #3532 )
2022-07-27 16:53:39 -05:00
Charles Kerr
ec79a2a888
fix: clang-tidy misc-const-correctness warnings ( #3529 )
2022-07-27 09:03:13 -05:00
Charles Kerr
256b436023
fix: clang 15 warnings ( #3172 )
...
* fix modernize-macro-to-enum libtransmission warnings
* fix readability-simplify-boolean-expr libtransmission warnings
* fix bugprone-unchecked-optional-access libtransmission warnings
2022-06-01 11:56:59 -05:00
Charles Kerr
cec2195c78
refactor: tr_peerMgrGetPeers() returns a vector ( #3142 )
...
* refactor: tr_peerMgrGetPeers() returns a vector
* chore: iwyu <iterator> for std::back_inserter
* chore: iwyu <vector> for std::vector
2022-05-26 20:29:10 -05:00
Antoine Cœur
5d52da8726
Address format conversion warnings in localizations ( #3059 )
2022-05-14 00:31:24 -05:00
Charles Kerr
5e769fbc55
refactor: make tr_recentHistory a template class ( #3012 )
...
This gives more flexibility on the size of the count bins, so we can save space on smaller counts
2022-04-28 10:52:26 -05:00
Charles Kerr
7c2477dddf
refactor: reduce field padding in some structs ( #3006 )
...
* refactor: use smaller integral types in tr_bandwidth
* refactor: re-arrange tr_torrent fields to avoid padding
* refactor: re-arrange tr_torrent fields to avoid padding
* refactor: re-arrange tr_announcer fields to avoid padding
2022-04-28 08:44:24 -05:00
Charles Kerr
ed897f93f2
refactor: remove evbuffer_free_to_str() ( #2967 )
2022-04-22 13:05:49 -05:00
Charles Kerr
32f854a7cf
refactor: add a tr_port safety class ( #2952 )
2022-04-21 10:58:13 -05:00