/usr/lib/gitano/bin/gitano-update-ssh is in gitano 1.1-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | #!/usr/bin/lua5.1
-- -*- Lua -*-
-- gitano-auth
--
-- Git (with) Augmented network operations -- User authentication wrapper
--
-- Copyright 2012-2017 Daniel Silverstone <dsilvers@digital-scurf.org>
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
-- modification, are permitted provided that the following conditions
-- are met:
-- 1. Redistributions of source code must retain the above copyright
-- notice, this list of conditions and the following disclaimer.
-- 2. Redistributions in binary form must reproduce the above copyright
-- notice, this list of conditions and the following disclaimer in the
-- documentation and/or other materials provided with the distribution.
-- 3. Neither the name of the author nor the names of their contributors
-- may be used to endorse or promote products derived from this software
-- without specific prior written permission.
--
-- THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-- ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-- SUCH DAMAGE.
--
--
--[[Gitano modules installed into /usr/share/lua/5.1/?.lua]]
local gitano = require "gitano"
local gall = require "gall"
local luxio = require "luxio"
local sio = require "luxio.simple"
local sp = require "luxio.subprocess"
gitano.config.lib_bin_path("/usr/lib/gitano/bin")
gitano.config.share_path("/usr/share/gitano")
gitano.i18n.set_langpack_path("/usr/share/gitano/lang") gitano.i18n.set_category()
gitano.plugins.load_plugins {"/etc/gitano/plugins", "/usr/lib/gitano/plugins"}
local repo_root = ...
gitano.config.repo_path(repo_root)
gitano.log.bump_level(gitano.log.level.CHAT)
gitano.log.syslog.open()
-- Now load the administration data
local admin_repo = gall.repository.new((repo_root or "") .. "/gitano-admin.git")
if not admin_repo then
gitano.log.error(gitano.i18n.expand("UPDATE_SSH_USAGE"))
gitano.log.fatal(gitano.i18n.expand("ERROR_CANNOT_FIND_ADMIN_REPO"));
end
local admin_head = admin_repo:get(admin_repo.HEAD)
if not admin_head then
gitano.log.fatal(gitano.i18n.expand("ERROR_BAD_ADMIN_REPO"))
end
local config, msg = gitano.config.parse(admin_head)
if not config then
gitano.log.critical(gitano.i18n.expand("ERROR_CANNOT_PARSE_ADMIN"))
gitano.log.critical(" * " .. (msg or "No error?"))
gitano.log.fatal(gitano.i18n.expand("ERROR_CANNOT_CONTINUE"))
end
gitano.config.writessh(config)
gitano.log.syslog.close()
return 0
|