0xV3NOMx
Linux ip-172-26-7-228 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64



Your IP : 3.138.178.162


Current Path : /proc/self/root/usr/bin/X11/
Upload File :
Current File : //proc/self/root/usr/bin/X11/ssh-import-id

#! /usr/bin/python3
#
# ssh-import-id - Authorize SSH public keys from trusted online identities
#
# Copyright (c) 2013 Casey Marshall <casey.marshall@gmail.com>
# Copyright (c) 2013-16 Dustin Kirkland <dustin.kirkland@gmail.com>
#
# ssh-import-id is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3.
#
# ssh-import-id is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with ssh-import-id.  If not, see <http://www.gnu.org/licenses/>.


import argparse
import sys
from ssh_import_id import *


def main():
	errors = []
	try:
		os.umask(0o177)
		parser.options = parser.parse_args()
		keys = []
		for userid in parser.options.userids:
			user_pieces = userid.split(':')
			if len(user_pieces) == 2:
				proto, username = user_pieces
			elif len(user_pieces) == 1:
				proto, username = DEFAULT_PROTO, userid
			else:
				die("Invalid user ID: [%s]" % (userid))
			if parser.options.remove:
				k = remove_keys(proto, username)
				keys.extend(k)
				action = "Removed"
			else:
				k = import_keys(proto, username, parser.options.useragent)
				keys.extend(k)
				action = "Authorized"
			if len(k) == 0:
				errors.append(userid)
		logging.info("[%d] SSH keys [%s]" % (len(keys), action))
	except (Exception,):
		e = sys.exc_info()[1]
		die("%s" % (str(e)))
	cleanup()
	if len(errors) > 0:
		die("No matching keys found for [%s]" % ','.join(errors))
	os._exit(0)


if __name__ == '__main__':
	main()