diff options
Diffstat (limited to 'applications/luci-app-aria2/root/usr')
3 files changed, 74 insertions, 0 deletions
diff --git a/applications/luci-app-aria2/root/usr/libexec/aria2-call b/applications/luci-app-aria2/root/usr/libexec/aria2-call new file mode 100755 index 0000000000..eba7aea5ec --- /dev/null +++ b/applications/luci-app-aria2/root/usr/libexec/aria2-call @@ -0,0 +1,25 @@ +#!/bin/sh + +. "$IPKG_INSTROOT/usr/share/libubox/jshn.sh" + +action=$1 +shift + +case "$action" in + cat) + case "$1" in + conf|session) + config_dir="$(uci -q get aria2.main.config_dir)" + list_file="${config_dir:-/var/etc/aria2}/aria2.$1.main" + json_init + json_add_string file "$list_file" + json_add_string content "$(cat "$list_file")" + json_dump + ;; + esac + ;; + tail) + log_file=$(uci -q get aria2.main.log) + tail -n 50 "${log_file:-/var/log/aria2.log}" + ;; +esac diff --git a/applications/luci-app-aria2/root/usr/share/luci/menu.d/luci-app-aria2.json b/applications/luci-app-aria2/root/usr/share/luci/menu.d/luci-app-aria2.json new file mode 100644 index 0000000000..8728252501 --- /dev/null +++ b/applications/luci-app-aria2/root/usr/share/luci/menu.d/luci-app-aria2.json @@ -0,0 +1,40 @@ +{ + "admin/services/aria2": { + "title": "Aria2", + "order": 30, + "action": { + "type": "firstchild" + }, + "depends": { + "acl": [ "luci-app-aria2" ], + "uci": { "aria2": true } + } + }, + + "admin/services/aria2/config": { + "title": "Configuration", + "order": 10, + "action": { + "type": "view", + "path": "aria2/config" + } + }, + + "admin/services/aria2/files": { + "title": "Files", + "order": 20, + "action": { + "type": "view", + "path": "aria2/files" + } + }, + + "admin/services/aria2/log": { + "title": "Log", + "order": 30, + "action": { + "type": "view", + "path": "aria2/log" + } + } +} diff --git a/applications/luci-app-aria2/root/usr/share/rpcd/acl.d/luci-app-aria2.json b/applications/luci-app-aria2/root/usr/share/rpcd/acl.d/luci-app-aria2.json index 891f97c28f..af5d31e9bd 100644 --- a/applications/luci-app-aria2/root/usr/share/rpcd/acl.d/luci-app-aria2.json +++ b/applications/luci-app-aria2/root/usr/share/rpcd/acl.d/luci-app-aria2.json @@ -2,6 +2,15 @@ "luci-app-aria2": { "description": "Grant UCI access for luci-app-aria2", "read": { + "ubus": { + "service": [ "list" ] + }, + "file": { + "/etc/passwd": [ "read" ], + "/sbin/logread": [ "exec" ], + "/usr/bin/aria2c": [ "exec" ], + "/usr/libexec/aria2-call": [ "exec" ] + }, "uci": [ "aria2" ] }, "write": { |