X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=prosodyctl;h=4d3c47908e864f60ed7bba4e0456d5cf994f48fb;hb=dc2ec682ee888187306eeaf9e5f8d832fbf47dbb;hp=12117c0f25b266ce2c764ef2baf510fae059db1b;hpb=68b551be947e0502e3d2b248c4afd5db68158080;p=prosody.git diff --git a/prosodyctl b/prosodyctl index 12117c0f..4d3c4790 100755 --- a/prosodyctl +++ b/prosodyctl @@ -227,6 +227,7 @@ local function make_host(hostname) return { type = "local", events = prosody.events, + modules = {}, users = require "core.usermanager".new_null_provider(hostname) }; end @@ -686,11 +687,13 @@ function cert_commands.key(arg) if ask_overwrite(key_filename) then return nil, key_filename; end - os.remove(key_filename); -- We chmod this file to not have write permissions + os.remove(key_filename); -- This file, if it exists is unlikely to have write permissions local key_size = tonumber(arg[2] or show_prompt("Choose key size (2048):") or 2048); + local old_umask = pposix.umask("0377"); if openssl.genrsa{out=key_filename, key_size} then os.execute(("chmod 400 '%s'"):format(key_filename)); show_message("Key written to ".. key_filename); + pposix.umask(old_umask); return nil, key_filename; end show_message("There was a problem, see OpenSSL output"); @@ -722,7 +725,7 @@ function cert_commands.generate(arg) if #arg >= 1 and arg[1] ~= "--help" then local cert_filename = (CFG_DATADIR or ".") .. "/" .. arg[1] .. ".cert"; if ask_overwrite(cert_filename) then - return nil, conf_filename; + return nil, cert_filename; end local _, key_filename = cert_commands.key({arg[1]}); local _, conf_filename = cert_commands.config(arg);