transmission/libtransmission
Charles Kerr 6e8f9f3ff0
feat: add tr_strbuf (#2810)
* feat: add tr_strbuf class for building tmp strings

Based on fmt::basic_memory_buf, this is a growable string buffer that
has an initial size that's large enough to build most filenames or URLs
without needing heap allocations.

Adds a couple of extra helpers such as a `c_str()` method to make dealing
with old zero-terminated string APIs easier.
2022-03-24 16:41:29 -05:00
..
.clang-tidy refactor: clang-tidy in libtransmission (#2578) 2022-02-06 22:28:36 -06:00
CMakeLists.txt feat: add tr_strbuf (#2810) 2022-03-24 16:41:29 -05:00
announce-list.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
announce-list.h perf: skip some excess announce list rebuilds 2022-02-21 08:34:59 -06:00
announcer-common.h refactor: remove deep logging (#2749) 2022-03-09 23:51:14 -06:00
announcer-http.cc fix: log unexpected announce/scrape keys (#2778) 2022-03-17 19:31:24 -05:00
announcer-udp.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
announcer.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
announcer.h refactor: use C++ objects in announcer (#2474) 2022-01-22 23:41:01 -06:00
bandwidth.cc refactor: aggregate bandwidth objects (#2783) 2022-03-18 11:34:29 -05:00
bandwidth.h refactor: aggregate bandwidth objects (#2783) 2022-03-18 11:34:29 -05:00
benc.h refactor: set logging levels (#2755) 2022-03-11 15:09:22 -06:00
bitfield.cc fix: bugprone-narrowing-conversions warnings in bitfield.cc (#2806) 2022-03-24 08:31:00 -05:00
bitfield.h chore: add more descriptive assertion in bitfield (#2748) 2022-03-09 17:43:42 -06:00
block-info.cc refactor: remove unused tr_block_info.n_blocks_in_piece (#2704) 2022-02-24 12:14:46 -06:00
block-info.h refactor: remove unused tr_block_info.n_blocks_in_piece (#2704) 2022-02-24 12:14:46 -06:00
blocklist.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
blocklist.h Revert "fix: sonarcloud (#2558)" (#2562) 2022-02-01 11:30:51 -06:00
cache.cc fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
cache.h refactor: use tr_block_info::Location in cache.cc (#2652) 2022-02-19 07:45:19 -06:00
clients.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
clients.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
completion.cc refactor: always use a blocksize of 16 KB (#2694) 2022-02-23 14:25:06 -06:00
completion.h feat: newly-added seeds skip the full verify step (#2626) 2022-02-14 13:17:51 -06:00
crypto-utils-ccrypto.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
crypto-utils-cyassl.cc refactor: a little more logging (#2800) 2022-03-22 11:45:56 -05:00
crypto-utils-fallback.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
crypto-utils-openssl.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
crypto-utils-polarssl.cc refactor: a little more logging (#2800) 2022-03-22 11:45:56 -05:00
crypto-utils.cc feat: add support for adding torrents by raw hash values (#2608) 2022-02-12 22:16:55 -06:00
crypto-utils.h feat: add support for adding torrents by raw hash values (#2608) 2022-02-12 22:16:55 -06:00
crypto.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
crypto.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
error-types.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
error.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
error.h refactor: add benc::Handler::Context (#2531) 2022-01-28 16:46:14 -06:00
fdlimit.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
fdlimit.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
file-info.cc feat: warn when creating torrents with nonportable filenames (#2695) 2022-02-23 17:38:07 -06:00
file-info.h feat: warn when creating torrents with nonportable filenames (#2695) 2022-02-23 17:38:07 -06:00
file-piece-map.cc Feat: add tr_block_info::Location (#2649) 2022-02-18 17:17:19 -06:00
file-piece-map.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
file-posix.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
file-win32.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
file.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
file.h refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
handshake.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
handshake.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
history.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
inout.cc refactor: fmt part 3 (#2773) 2022-03-15 19:51:36 -05:00
inout.h refactor: use tr_block_info::Location in inout.cc (#2658) 2022-02-19 10:07:08 -06:00
interned-string.h refactor: aggregate bandwidth objects (#2783) 2022-03-18 11:34:29 -05:00
jsonsl.c chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
jsonsl.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
libt.dox
log.cc fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
log.h refactor: a little more logging (#2800) 2022-03-22 11:45:56 -05:00
magnet-metainfo.cc support for resuming magnet links (#2702) 2022-02-24 15:52:29 -06:00
magnet-metainfo.h support for resuming magnet links (#2702) 2022-02-24 15:52:29 -06:00
makemeta.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
makemeta.h refactor: use fmt to build the GTK client's user-visible strings (#2788) 2022-03-21 09:15:48 -05:00
mime-types.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
mime-types.js chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
natpmp.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
natpmp_local.h NAT-PMP private/public port and lifetime fix (#1602) 2022-01-21 18:07:24 -06:00
net.cc perf: avoid excess filesystem checks (#2786) 2022-03-18 16:31:25 -05:00
net.h refactor: set logging levels (#2755) 2022-03-11 15:09:22 -06:00
peer-common.h refactor: remove redundant MAX_BLOCK_SIZE constant (#2740) 2022-03-04 23:35:22 -08:00
peer-io.cc fix: set the utp state change log level to trace (#2809) 2022-03-24 13:46:34 -05:00
peer-io.h refactor: set logging levels (#2755) 2022-03-11 15:09:22 -06:00
peer-mgr-active-requests.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
peer-mgr-active-requests.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
peer-mgr-wishlist.cc refactor: rename mediator classes (#2681) 2022-02-22 09:09:24 -06:00
peer-mgr-wishlist.h refactor: rename mediator classes (#2681) 2022-02-22 09:09:24 -06:00
peer-mgr.cc fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
peer-mgr.h refactor: fmt part 3 (#2773) 2022-03-15 19:51:36 -05:00
peer-msgs.cc refactor: use fmt (#2758) 2022-03-13 23:43:35 -05:00
peer-msgs.h refactor: remove utils dep from peer-io (#2719) 2022-02-28 14:26:26 -08:00
peer-socket.h refactor: move tr_netClosePeerSocket() impl to net.cc (#2659) 2022-02-19 12:10:43 -06:00
platform-quota.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
platform-quota.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
platform.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
platform.h refactor: use fmt to build the GTK client's user-visible strings (#2788) 2022-03-21 09:15:48 -05:00
port-forwarding.cc refactor: a little more logging (#2800) 2022-03-22 11:45:56 -05:00
port-forwarding.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
ptrarray.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
ptrarray.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
quark.cc Limit bandwidth used by a group of torrents (#2761) 2022-03-18 08:11:59 -05:00
quark.h Limit bandwidth used by a group of torrents (#2761) 2022-03-18 08:11:59 -05:00
resume.cc Limit bandwidth used by a group of torrents (#2761) 2022-03-18 08:11:59 -05:00
resume.h Limit bandwidth used by a group of torrents (#2761) 2022-03-18 08:11:59 -05:00
rpc-server.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
rpc-server.h fixup: unix socket implementation changes (#2707) 2022-02-27 14:05:08 -08:00
rpcimpl.cc fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
rpcimpl.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
session-id.cc refactor: fmt part 3 (#2773) 2022-03-15 19:51:36 -05:00
session-id.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
session.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
session.h refactor: aggregate bandwidth objects (#2783) 2022-03-18 11:34:29 -05:00
stats.cc refactor: remove deep logging (#2749) 2022-03-09 23:51:14 -06:00
stats.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
subprocess-posix.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
subprocess-win32.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
subprocess.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
torrent-ctor.cc support for resuming magnet links (#2702) 2022-02-24 15:52:29 -06:00
torrent-magnet.cc refactor: a little more logging (#2800) 2022-03-22 11:45:56 -05:00
torrent-magnet.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
torrent-metainfo.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
torrent-metainfo.h perf: avoid excess filesystem checks (#2786) 2022-03-18 16:31:25 -05:00
torrent.cc fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
torrent.h perf: avoid excess filesystem checks (#2786) 2022-03-18 16:31:25 -05:00
torrents.cc fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
torrents.h fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
tr-assert.cc chore: update license spdx abbreviations (#2582) 2022-02-07 10:25:02 -06:00
tr-assert.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
tr-assert.mm Make macOS crash reports provide more information (#2471) 2022-01-23 18:10:06 -06:00
tr-dht.cc refactor: a little more logging (#2800) 2022-03-22 11:45:56 -05:00
tr-dht.h Revert "fix: sonarcloud (#2558)" (#2562) 2022-02-01 11:30:51 -06:00
tr-getopt.cc refactor: sonarcloud "use if init" statements (#2587) 2022-02-07 23:44:31 -06:00
tr-getopt.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
tr-lpd.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
tr-lpd.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
tr-macros.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
tr-strbuf.h feat: add tr_strbuf (#2810) 2022-03-24 16:41:29 -05:00
tr-udp.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
tr-udp.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
tr-utp.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
tr-utp.h refactor: use tr_block_info::Location in cache.cc (#2652) 2022-02-19 07:45:19 -06:00
transmission.h refactor: use fmt to build the GTK client's user-visible strings (#2788) 2022-03-21 09:15:48 -05:00
trevent.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
trevent.h feat: tr_runInEventThread() now takes std::function, typesafe args (#2739) 2022-03-04 20:26:03 -08:00
upnp.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
upnp.h Add bind-address-ipv4 to upnp (#845) 2022-01-21 09:44:45 -06:00
utils.cc refactor: tr_sys_path_dirname returns a std::string (#2792) 2022-03-21 15:22:50 -05:00
utils.h refactor: fmt part 2 (#2771) 2022-03-15 09:52:16 -05:00
variant-benc.cc refactor: sonarcloud "use if init" statements (#2587) 2022-02-07 23:44:31 -06:00
variant-common.h refactor: SAX-like benc parser pt. 1 (#2490) 2022-01-24 00:30:00 -06:00
variant-json.cc refactor: fmt pt 4 (#2774) 2022-03-16 19:23:44 -05:00
variant.cc refactor: fmt part 3 (#2773) 2022-03-15 19:51:36 -05:00
variant.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
verify.cc refactor: use fmt (#2758) 2022-03-13 23:43:35 -05:00
verify.h refactor: remove callback from tr_torrentVerify() public API (#2592) 2022-02-09 12:02:59 -06:00
version.h.in
watchdir-common.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
watchdir-generic.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
watchdir-inotify.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
watchdir-kqueue.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
watchdir-win32.cc refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
watchdir.cc refactor: use fmt to build the GTK client's user-visible strings (#2788) 2022-03-21 09:15:48 -05:00
watchdir.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
web-utils.cc fix: sonarcloud code smells (#2623) 2022-02-13 23:44:38 -06:00
web-utils.h refactor: remove utils dep from peer-io (#2719) 2022-02-28 14:26:26 -08:00
web.cc perf: tell curl_share to share everything (#2802) 2022-03-23 22:02:18 -05:00
web.h refactor: rename mediator classes (#2681) 2022-02-22 09:09:24 -06:00
webseed.cc fix: sonarcloud warnings (#2804) 2022-03-24 00:18:41 -05:00
webseed.h chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
wildmat.c