Commit Graph

20 Commits

Author SHA1 Message Date
Xirvik d935e0ffe9 Address review feedback: explicit mark_safe whitelist and rpc trust flow 2026-03-23 15:11:07 +01:00
Xirvik f767053297 Mark safe commands with flag_untrusted_safe for whitelist enforcement
Annotate all commands that web UIs (ruTorrent) need for normal torrent
management with _U macro variants, which set flag_untrusted_safe.
Commands not marked are blocked by default for untrusted connections.

Safe commands include:
- d.* download getters, state, priorities, custom fields, start/stop
- f.* file getters, priority control
- p.* peer getters, disconnect, ban/snub
- t.* tracker getters, enable/disable
- throttle.* rate getters/setters, peer limits
- network.* read-only queries (getters safe, setters blocked)
- view.list, view.size, view.filter_all, ui.current_view
- load.*, download_list, d.multicall2, d.multicall.filtered
- convert.*, branch/if/and/or/not/cat/value/print
- system.* version/time/status queries (read-only)
- choke_group.* read-only queries
- method.has_key, method.const, method.list_keys, method.get, strings.*
- group.*.view, group.*.ratio.min/max/upload (dynamic, via flag propagation)

Blocked by default (not marked):
- execute*, method.insert/set/redirect, schedule*, import
- log.*, file.append, network.scgi.open_*, view.filter/sort/event_*
- system.shutdown, system.env, group.insert, choke_group.insert
- All user-defined commands (via method.insert)
2026-03-23 15:11:07 +01:00
Rosen Penev f0517e2748 replace various find_if calls
C++11 has shorter equivalents.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2025-06-18 14:39:42 +02:00
rakshasa b8cb828d96 Replaced depreacted rak/functional calls. 2024-12-15 00:54:20 +09:00
trim21 5a200f5d8f fix: d.group.name should return group name instead of group index 2024-12-06 01:09:18 +09:00
rakshasa 952777d75e Added commands to update choke queue. 2021-05-01 19:45:50 +09:00
rakshasa dc8e786d58 Merge branch 'master' into c++11
Conflicts:
	src/command_dynamic.cc
	src/command_events.cc
	src/command_groups.cc
	src/command_ip.cc
	src/command_network.cc
2014-06-18 00:44:36 +09:00
rakshasa b8e24b78cd Added missing option strings commands. 2014-06-13 18:24:03 +09:00
rakshasa 3b39f37f49 C++11 compatibility fixes. 2014-05-13 23:36:37 +09:00
rakshasa bb75f06c6d Replaced std::placeholders with tr1::placholders. 2012-03-21 01:24:35 +09:00
rakshasa 04acc8a0af Converted std::bind calls to tr1::bind. 2012-03-21 01:22:25 +09:00
rakshasa 4d313e6353 Updated copyright information.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1301 e378c898-3ddf-0310-93e7-cc216c733640
2011-10-09 06:30:14 +00:00
rakshasa 7680277eee * Moving over some cosmetic changes from a patchset.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1269 e378c898-3ddf-0310-93e7-cc216c733640
2011-08-13 09:38:26 +00:00
rakshasa dfc159f67a * Fixed dummy choke groups default heuristics and other minor issues.
* Added 'd.group.name'.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1267 e378c898-3ddf-0310-93e7-cc216c733640
2011-08-10 01:39:10 +00:00
rakshasa 847d1ae081 * Fixed strings.choke_heuristics.* typo.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1266 e378c898-3ddf-0310-93e7-cc216c733640
2011-08-08 10:33:27 +00:00
rakshasa c7ad0a90da * Fixed 'network.http.dns_cache_timeout{,.set}'.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1265 e378c898-3ddf-0310-93e7-cc216c733640
2011-08-07 11:06:29 +00:00
rakshasa ea192b342c * Fixed 'd.group.set' for the mainline version.
git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1264 e378c898-3ddf-0310-93e7-cc216c733640
2011-08-06 08:01:09 +00:00
rakshasa ce16621707 * Fixed a potential issue causing high loads while waiting for main thread to exit polling. #2661
* Added 'strings.choke_heuristics.{upload,download}' and extra dummy upload/download heuristics for testings.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1263 e378c898-3ddf-0310-93e7-cc216c733640
2011-08-06 05:20:18 +00:00
rakshasa 7ff232848a * Minor fixes to the choke group implementation.
* Added some documentation.

* Fixed a compiler bug on gcc-4.6.1.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1255 e378c898-3ddf-0310-93e7-cc216c733640
2011-07-29 12:09:29 +00:00
rakshasa b64b975ad4 * Split out parts of command_network.cc to make is easier to compile.
* Moved the iptos and encryption strings to option_strings.cc.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@1254 e378c898-3ddf-0310-93e7-cc216c733640
2011-07-27 23:37:10 +00:00