Jari Sundell
dd221ac66a
Replaced Thread::next_timeout_usec().
2025-04-16 02:39:40 +09:00
rakshasa
a8622e5c80
Cleaned up thread-related code.
2025-04-12 23:03:08 +02:00
Jari Sundell
2ab7460cbc
Fix SCGI threading and added missing header.
2025-04-01 01:26:07 +09:00
rakshasa
2a998df4f1
Fixed LUA compilaition issue.
2025-03-31 06:19:02 +02:00
rakshasa
d5b28c30a9
Added default switch cases to RpcManager.
2025-03-30 15:38:07 +02:00
rakshasa
8ac31afd06
Fixed tinyxml2 compile error.
2025-03-28 16:07:55 +01:00
Jari Sundell
f33fc331ce
Thread-safe improvements to dht/tracker code and reorganized thread objects.
2025-03-13 22:15:12 +09:00
Jari Sundell
0adfc17335
Compatibility fixes with thread-safe list tracker changes.
2025-03-11 20:38:04 +09:00
rakshasa
37a5b7bccb
Moved torrent::Tracker to torrent::tracker::Tracker.
2025-02-27 19:24:35 +01:00
Auska
851ac469c3
Fix xmlrpc namespace
2025-02-03 17:37:01 +01:00
Peter Woodman
787e23a25d
clang-tidy: ignore third-party code nlohmann/json.h
2025-01-20 12:31:04 +01:00
kannibalox
9f48226663
Add JSON-RPC capability
...
Inline nlohmann/json for the JSON parsing itself, and handle requests
with the same SCGI interface as XML-RPC.
Based off the work in https://github.com/jesec/rtorrent
2025-01-20 12:31:04 +01:00
stickz
e7fc891f11
cleanup: Changes for c++17
...
This cleanup adjusts the rTorrent code to comply with c++17 standard. It also simplifies various parts of the code.
2025-01-18 20:15:20 +01:00
Jari Sundell
2e0a417367
Add optional Lua scripting capabilties - kannibalox@gmail.com
2025-01-19 04:02:06 +09:00
stickz
712e7e5db0
cleanup: Remove rak/functional.h
...
This commit replaces the `rak/functional.h` features with lambdas and std functions.
There was one instance with `std::sort` where the comparison operator was always evaluating to false and it wasn't sorting anything. This is removed in favour of the default comparison operator.
`std::sort(transferChunks.begin(), transferChunks.end());`
2025-01-12 14:30:01 -05:00
stickz
9c92bfc7e2
cleanup: Remove rak::call_delete
2025-01-11 21:22:40 -05:00
simonc56
2bf81aa8f5
tinyxml2: array with data for dict type
2025-01-01 21:33:30 +09:00
simonc56
a9c0b65b9d
tinyxml2: in xmlrpc an array must include values in a data element
2025-01-01 21:33:30 +09:00
stickz
73fed24459
tinyxml2: Change from i4 to i8
...
We need to follow the same specification as xmlrpc-c until we deprecate it. It is breaking various software such as sonarr. We can't have xmlrpc using i8 and tinyxml2 using i4, while we allow both to be used.
2025-01-01 21:32:23 +09:00
kannibalox
8f0331625a
Correctly handle commands that are flagged as not using targets
...
Fixes #1346
2024-12-27 01:00:23 +09:00
stickz
3c65afcf8c
tinyxml2: Resolve LTO issues
...
We can't have two classes with the same name in the rpc namespace. It causes ODR and lto-type-mismatches when compiling rTorrent with LTO.
This pull request addresses the problem by renaming the `xmlrpc_error` error class to `xmlrpc_error_c` in the xmlrpc_c file.
2024-12-27 00:55:29 +09:00
kannibalox
cd9948a4a8
Remove/replace functional_fun.h functions
2024-12-22 19:17:36 +09:00
stickz
e3be3b2c12
scgi: Fix Apple and Solaris compatibility
...
This is a follow up to #1310 . Apple and Solaris do not support MSG_NOSIGNAL, so disable this flag for these platforms until we find a better solution. Other platforms remain unaffected.
2024-12-14 23:34:48 +09:00
kannibalox
5792ed1ae2
Apply clang-format
2024-12-07 19:26:29 +09:00
kannibalox
8cfc71b936
Fix system.multicall parameter parsing
2024-12-07 19:26:29 +09:00
kannibalox
f33c2560a3
Default to an empty list when not passed explicit <params>
2024-12-07 19:26:29 +09:00
kannibalox
48c40ee0c6
Fix typo: methodReponse -> methodResponse
2024-12-07 19:26:29 +09:00
kannibalox
3aeb213dc4
Avoid <int> in tinyxml2 responses
...
It's part of the XML-RPC spec, but some clients only accept i4/i8, which
should be supported nearly universally.
Fixes #1330
2024-12-07 19:26:29 +09:00
rakshasa
713067ba94
Fixed minor syntax issues.
2024-12-05 04:00:54 +09:00
Jari Sundell
fea2cbfac6
Use proper target namespace
2024-12-05 04:00:54 +09:00
kannibalox
6bf1731a1c
Ensure compability check actually checks the type for files
...
Fixes https://github.com/rakshasa/rtorrent/issues/854
2024-12-05 04:00:54 +09:00
rakshasa
11ddc35d02
Renamed tinyxml2.cpp file.
2024-11-25 18:44:28 +09:00
kannibalox
b3fabd2a2b
Align argument name with header definition
2024-11-25 18:44:28 +09:00
kannibalox
4b7c3ffafe
Use empty() instead of checking size
...
Also use a const pointer for a child element
2024-11-25 18:44:28 +09:00
kannibalox
730d43b6c7
Explicitly mark narrowing conversion
2024-11-25 18:44:28 +09:00
kannibalox
af2f30c183
Remove unused variable
2024-11-25 18:44:28 +09:00
kannibalox
36fd837d27
Fix unnecessary narrowing with proper return type
2024-11-25 18:44:28 +09:00
kannibalox
8dd8d691c5
Explicitly check result of std::strncmp
2024-11-25 18:44:28 +09:00
kannibalox
e367b162ab
Share object_to_target between tinyxml2 and xmlrpc-c
2024-11-25 18:44:28 +09:00
kannibalox
49cdfee65a
Avoid ambiguous value_* in variable names
2024-11-25 18:44:28 +09:00
kannibalox
5680db3598
Parse out target param first if available
2024-11-25 18:44:28 +09:00
kannibalox
fa2c7d961b
Remove unnecessary std::string() and use lowercase for error msgs
2024-11-25 18:44:28 +09:00
kannibalox
d6dcbc4a69
Add size limit to XML-RPC documents, defaulting to max SCGI size
2024-11-25 18:44:28 +09:00
kannibalox
cadfcb50d2
Print iterator for TYPE_DICT_KEY, not object
2024-11-25 18:44:28 +09:00
kannibalox
71a39cd8a0
Keep as_*() outside of loops
2024-11-25 18:44:28 +09:00
kannibalox
0658486966
Change base64 decoder name, and add util for removing newlines
2024-11-25 18:44:28 +09:00
kannibalox
687fbbb83d
Formatting
2024-11-25 18:44:28 +09:00
kannibalox
f9c9fa2e3b
Move int element converter to helper function
...
Also fix strncmp checks
2024-11-25 18:44:28 +09:00
kannibalox
337897784d
Change rpc namespace to include static consts
2024-11-25 18:44:28 +09:00
kannibalox
782b1e4ea8
Skip converting value_element_type to std::string
2024-11-25 18:44:28 +09:00