An ubus RPC daemon for Liminix
Find a file
Jo-Philipp Wich 821045f6ce file: add path based read/write/exec ACL checks
Introduce ACL checks to verify that the requested path may be read, written
or executed. This allows to restrict ubus file commands to specific paths.

To setup the required ACLs, the following ubus command may be used
on the command line:

ubus call session grant '{
  "ubus_rpc_session": "d41d8cd98f00b204e9800998ecf8427e",
  "scope": "file",
  "objects": [
    [ "/etc", "read" ],
    [ "/etc/*", "write" ],
    [ "/sbin/sysupgrade", "exec" ]
  ]
}'

The "read", "list", "stat" and "md5" procedures require "read" permissions,
the "write" procedure requires "write" permission and the "exec" procedure
requires "exec" permissions.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-01 18:29:03 +02:00
include/rpcd plugin: store pointer to exec timeout value in the ops structure 2018-11-28 12:10:40 +01:00
CMakeLists.txt Fix possible linker errors by using CMake find_library macro 2019-06-05 13:10:50 +02:00
exec.c treewide: rename exec_timeout to rpc_exec_timeout 2018-11-28 12:07:58 +01:00
file.c file: add path based read/write/exec ACL checks 2019-09-01 18:29:03 +02:00
iwinfo.c iwinfo: add mesh infos in assoclist. 2019-03-05 19:51:54 +01:00
main.c treewide: rename exec_timeout to rpc_exec_timeout 2018-11-28 12:07:58 +01:00
plugin.c plugin: store pointer to exec timeout value in the ops structure 2018-11-28 12:10:40 +01:00
session.c session: handle NULL return values of crypt() 2019-05-22 14:25:52 +02:00
sys.c sys: packagelist: allow listing all packages 2017-12-06 18:44:23 +01:00
uci.c uci: tighten uci reorder operation error handling 2018-08-09 00:07:27 +02:00
unauthenticated.json session: setup a persistent NULL section and implement login procedure 2013-09-10 19:56:36 +02:00