luci-base: add luci/setPassword rpc method, dropbear feature flag

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
This commit is contained in:
Jo-Philipp Wich 2019-09-16 07:49:05 +02:00
parent 9ecfe33edd
commit 3e1cf14ad1

View file

@ -396,6 +396,7 @@ local methods = {
rv.zram = fs.access("/sys/class/zram-control")
rv.sysntpd = fs.readlink("/usr/sbin/ntpd") and true
rv.ipv6 = fs.access("/proc/net/ipv6_route")
rv.dropbear = fs.access("/usr/sbin/dropbear")
local wifi_features = { "eap", "11n", "11ac", "11r", "11w", "acs", "sae", "owe", "suiteb192" }
@ -575,6 +576,20 @@ local methods = {
return { error = err }
end
end
},
setPassword = {
args = { username = "root", password = "password" },
call = function(args)
local util = require "luci.util"
return {
result = (os.execute("(echo %s; sleep 1; echo %s) | passwd %s >/dev/null 2>&1" %{
luci.util.shellquote(args.password),
luci.util.shellquote(args.password),
luci.util.shellquote(args.username)
}) == 0)
}
end
}
}