* luci/libs/sys: fix password authentication for users with disabled password and...
authorJo-Philipp Wich <jow@openwrt.org>
Sun, 12 Oct 2008 00:12:21 +0000 (00:12 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Sun, 12 Oct 2008 00:12:21 +0000 (00:12 +0000)
libs/sys/luasrc/sys.lua

index 0e4a3543f5aeaa06f1fdb4d7a9833e16a3ce71d8..c271dee86b8a4ad5bbeb154d8f7abfc3eb8ccfb3 100644 (file)
@@ -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.