From: Jo-Philipp Wich Date: Sun, 12 Oct 2008 00:12:21 +0000 (+0000) Subject: * luci/libs/sys: fix password authentication for users with disabled password and... X-Git-Tag: 0.9.0~1115 X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=commitdiff_plain;h=6d3d30d88f2018ea1cc16b73d4ada329f541fc8f;hp=dfd272dc1d9a5ec375e7e24b98ecd6c34813e503 * luci/libs/sys: fix password authentication for users with disabled password and shadow environments --- diff --git a/libs/sys/luasrc/sys.lua b/libs/sys/luasrc/sys.lua index 0e4a3543f..c271dee86 100644 --- a/libs/sys/luasrc/sys.lua +++ b/libs/sys/luasrc/sys.lua @@ -35,7 +35,7 @@ luci.util = require "luci.util" luci.fs = require "luci.fs" luci.ip = require "luci.ip" -local tonumber, ipairs, pairs = tonumber, ipairs, pairs +local tonumber, ipairs, pairs, pcall = tonumber, ipairs, pairs, pcall --- LuCI Linux and POSIX system utilities. @@ -491,8 +491,12 @@ function user.checkpasswd(username, password) end end - return (pwd == posix.crypt(password, pwd)) + if pwd and #pwd > 0 and password and #password > 0 then + return (pwd == posix.crypt(password, pwd)) + end end + + return false end --- Change the password of given user.