diff options
author | Jo-Philipp Wich <jo@mein.io> | 2019-10-02 20:01:27 +0200 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2019-10-07 11:53:39 +0200 |
commit | 55fb53e995eb869ed4e8559ccff3daf8110d75aa (patch) | |
tree | 1a6e7a58292066708883f5fc1be072a1931683f3 /modules | |
parent | 811012cab56099cafb68ac98a08c01e28d3e42ad (diff) |
luci-mod-system: sshkeys.js: use common fs.js class
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'modules')
-rw-r--r-- | modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js | 26 |
1 files changed, 6 insertions, 20 deletions
diff --git a/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js b/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js index 4a8e223ae..84a1d6487 100644 --- a/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js +++ b/modules/luci-mod-system/htdocs/luci-static/resources/view/system/sshkeys.js @@ -1,5 +1,5 @@ 'use strict'; -'require rpc'; +'require fs'; var SSHPubkeyDecoder = L.Class.singleton({ lengthDecode: function(s, off) @@ -90,19 +90,6 @@ var SSHPubkeyDecoder = L.Class.singleton({ } }); -var callFileRead = rpc.declare({ - object: 'file', - method: 'read', - params: [ 'path' ], - expect: { data: '' } -}); - -var callFileWrite = rpc.declare({ - object: 'file', - method: 'write', - params: [ 'path', 'data' ] -}); - function renderKeys(keys) { var list = document.querySelector('.cbi-dynlist'); @@ -130,9 +117,10 @@ function renderKeys(keys) { } function saveKeys(keys) { - return callFileWrite('/etc/dropbear/authorized_keys', keys.join('\n') + '\n') + return fs.write('/etc/dropbear/authorized_keys', keys.join('\n') + '\n') .then(renderKeys.bind(this, keys)) - .then(L.ui.hideModal); + .catch(function(e) { L.ui.addNotification(null, E('p', e.message)) }) + .finally(L.ui.hideModal); } function addKey(ev) { @@ -226,10 +214,8 @@ function handleWindowDragDropIgnore(ev) { return L.view.extend({ load: function() { - return callFileRead('/etc/dropbear/authorized_keys').then(function(data) { - return (data || '').split(/\n/).map(function(line) { - return line.trim(); - }).filter(function(line) { + return fs.lines('/etc/dropbear/authorized_keys').then(function(lines) { + return lines.filter(function(line) { return line.match(/^ssh-/) != null; }); }); |