diff options
-rw-r--r-- | modules/luci-mod-system/htdocs/luci-static/resources/view/system/reboot.js | 14 | ||||
-rw-r--r-- | modules/luci-mod-system/root/usr/share/rpcd/acl.d/luci-mod-system.json | 3 |
2 files changed, 12 insertions, 5 deletions
diff --git a/modules/luci-mod-system/htdocs/luci-static/resources/view/system/reboot.js b/modules/luci-mod-system/htdocs/luci-static/resources/view/system/reboot.js index 3b9f450fc..92e1dd492 100644 --- a/modules/luci-mod-system/htdocs/luci-static/resources/view/system/reboot.js +++ b/modules/luci-mod-system/htdocs/luci-static/resources/view/system/reboot.js @@ -1,9 +1,15 @@ 'use strict'; 'require view'; -'require fs'; +'require rpc'; 'require ui'; 'require uci'; +var callReboot = rpc.declare({ + object: 'system', + method: 'reboot', + expect: { result: 0 } +}); + return view.extend({ load: function() { return uci.changes(); @@ -31,9 +37,9 @@ return view.extend({ }, handleReboot: function(ev) { - return fs.exec('/sbin/reboot').then(function(res) { - if (res.code != 0) { - L.ui.addNotification(null, E('p', _('The reboot command failed with code %d').format(res.code))); + return callReboot().then(function(res) { + if (res != 0) { + L.ui.addNotification(null, E('p', _('The reboot command failed with code %d').format(res))); L.raise('Error', 'Reboot failed'); } diff --git a/modules/luci-mod-system/root/usr/share/rpcd/acl.d/luci-mod-system.json b/modules/luci-mod-system/root/usr/share/rpcd/acl.d/luci-mod-system.json index b29ddb8f4..38ff98dee 100644 --- a/modules/luci-mod-system/root/usr/share/rpcd/acl.d/luci-mod-system.json +++ b/modules/luci-mod-system/root/usr/share/rpcd/acl.d/luci-mod-system.json @@ -160,7 +160,8 @@ "/sbin/reboot": [ "exec" ] }, "ubus": { - "file": [ "exec" ] + "file": [ "exec" ], + "system": [ "reboot" ] } } } |