From 4497a2b71e3d4fb9bbe759fa604c18ff49097099 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakobus=20Sch=C3=BCrz?= Date: Fri, 2 Aug 2019 00:58:21 +0200 Subject: [PATCH] getAllowedSSHPrincipals from config --- gitosis/principals.py | 6 ++++-- gitosis/util.py | 7 +++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gitosis/principals.py b/gitosis/principals.py index 68cb8ce..223ba00 100644 --- a/gitosis/principals.py +++ b/gitosis/principals.py @@ -23,9 +23,11 @@ def serve_principal(sshUser, principals): if '@' in sshUser: for user in [ sshUser, sshUser.split('@')[0] ]: - print TEMPLATE % dict(user=user, principals=principals) + print TEMPLATE % dict(user=user, + principals=getAllowedSSHPrincipals(cfg)) else: - print TEMPLATE % dict(user=sshUser, principals=principals) + print TEMPLATE % dict(user=sshUser, + principals=util.getAllowedSSHPrincipals(cfg)) class Main(app.App): diff --git a/gitosis/util.py b/gitosis/util.py index 4ec6bde..f0cd622 100644 --- a/gitosis/util.py +++ b/gitosis/util.py @@ -41,3 +41,10 @@ def getSSHPrincipalsPath(config): except (NoSectionError, NoOptionError): path = os.path.expanduser('~/.ssh/principals') return path + +def getAllowedSSHPrincipals(config): + try: + principals = config.get('gitosis', 'allowedPrincipals') + except (NoSectionError, NoOptionError): + principals = "git" + return path