Changeset

6799:4fc6b0a090bb

Merge 0.10->trunk
author Kim Alvefur <zash@zash.se>
date Wed, 26 Aug 2015 13:17:37 +0200
parents 6794:e3c51bf7861b (current diff) 6798:8b4c8e957211 (diff)
children 6800:ad231285efdd
files
diffstat 2 files changed, 18 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/mod_admin_adhoc.lua	Sat Aug 22 21:01:00 2015 +0200
+++ b/plugins/mod_admin_adhoc.lua	Wed Aug 26 13:17:37 2015 +0200
@@ -30,6 +30,7 @@
 local core_post_stanza = prosody.core_post_stanza;
 local adhoc_simple = require "util.adhoc".new_simple_form;
 local adhoc_initial = require "util.adhoc".new_initial_data_form;
+local set = require"util.set";
 
 module:depends("adhoc");
 local adhoc_new = module:require "adhoc".new;
@@ -613,6 +614,7 @@
 end);
 
 local function send_to_online(message, server)
+	local sessions;
 	if server then
 		sessions = { [server] = hosts[server] };
 	else
--- a/tools/ejabberd2prosody.lua	Sat Aug 22 21:01:00 2015 +0200
+++ b/tools/ejabberd2prosody.lua	Wed Aug 26 13:17:37 2015 +0200
@@ -72,7 +72,22 @@
 	print("["..(err or "success").."] vCard: "..node.."@"..host);
 end
 function password(node, host, password)
-	local ret, err = dm.store(node, host, "accounts", {password = password});
+	local data = {};
+	if type(password) == "string" then
+		data.password = password;
+	elseif type(password) == "table" and password[1] == "scram" then
+		local unb64 = require"mime".unb64;
+		local function hex(s)
+			return s:gsub(".", function (c)
+				return ("%02x"):format(c:byte());
+			end);
+		end
+		data.stored_key = hex(unb64(password[2]));
+		data.server_key = hex(unb64(password[3]));
+		data.salt = unb64(password[4]);
+		data.iteration_count = password[5];
+	end
+	local ret, err = dm.store(node, host, "accounts", data);
 	print("["..(err or "success").."] accounts: "..node.."@"..host);
 end
 function roster(node, host, jid, item)