From 853076c80306853e28fbb2a5f9c6a54d8abca9fd Mon Sep 17 00:00:00 2001 From: Kaarle Ritvanen Date: Wed, 31 Oct 2018 14:49:25 +0200 Subject: switch to Lua 5.3 --- aconf/model/aaa.lua | 12 +++++++++--- aconf/persistence/util.lua | 4 ++-- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'aconf') diff --git a/aconf/model/aaa.lua b/aconf/model/aaa.lua index 982e5b3..e65b678 100644 --- a/aconf/model/aaa.lua +++ b/aconf/model/aaa.lua @@ -1,13 +1,14 @@ --[[ -Copyright (c) 2012-2016 Kaarle Ritvanen +Copyright (c) 2012-2018 Kaarle Ritvanen See LICENSE file for license details --]] local M = require('aconf.model') local node = require('aconf.model.node') local object = require('aconf.object') +local map = require('aconf.util').map -local digest = require('crypto').digest +local digest = require('openssl.digest') local conf_addr = '/json'..require('posix').getcwd()..'/config' @@ -18,7 +19,12 @@ Role.permissions = M.Set{type=M.Reference{scope='../../../permissions'}} local function hash_password(algorithm, salt, password) - return algorithm..'$'..salt..'$'..digest(algorithm, salt..password) + return algorithm..'$'..salt..'$'..table.concat( + map( + function(b) return ('%02x'):format(b) end, + {string.byte(digest.new(algorithm):final(salt..password), 1, -1)} + ) + ) end local hash_pattern = '^(%w+)%$(%w+)%$%x+$' diff --git a/aconf/persistence/util.lua b/aconf/persistence/util.lua index d233b1d..792bdc8 100644 --- a/aconf/persistence/util.lua +++ b/aconf/persistence/util.lua @@ -1,5 +1,5 @@ --[[ -Copyright (c) 2012-2014 Kaarle Ritvanen +Copyright (c) 2012-2018 Kaarle Ritvanen See LICENSE file for license details --]] @@ -13,7 +13,7 @@ end function M.read_file(path) local file = M.open_file(path) - local data = file:read('*all') + local data = file:read('a') file:close() return data end -- cgit v1.2.3