diff options
author | Tommi Virtanen <tv@eagain.net> | 2008-06-26 11:33:48 +0300 |
---|---|---|
committer | Tommi Virtanen <tv@eagain.net> | 2008-06-26 11:33:48 +0300 |
commit | 72c754b2f03a139122dc4a3877b05704fa88f751 (patch) | |
tree | 3f75de593e32ce149a2f3af942ca863c481d8007 /gitosis/serve.py | |
parent | Understand the popular gitosis.conf typo "writeable". (diff) | |
download | gitosis-dakkar-72c754b2f03a139122dc4a3877b05704fa88f751.tar.gz gitosis-dakkar-72c754b2f03a139122dc4a3877b05704fa88f751.tar.bz2 gitosis-dakkar-72c754b2f03a139122dc4a3877b05704fa88f751.zip |
Accept "git upload-pack" etc, for future compatibility.
Diffstat (limited to 'gitosis/serve.py')
-rw-r--r-- | gitosis/serve.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/gitosis/serve.py b/gitosis/serve.py index c0b7135..9a91fcb 100644 --- a/gitosis/serve.py +++ b/gitosis/serve.py @@ -21,10 +21,12 @@ ALLOW_RE = re.compile("^'/*(?P<path>[a-zA-Z0-9][a-zA-Z0-9@._-]*(/[a-zA-Z0-9][a-z COMMANDS_READONLY = [ 'git-upload-pack', + 'git upload-pack', ] COMMANDS_WRITE = [ 'git-receive-pack', + 'git receive-pack', ] class ServingError(Exception): @@ -62,9 +64,19 @@ def serve( try: verb, args = command.split(None, 1) except ValueError: - # all known commands take one argument; improve if/when needed + # all known "git-foo" commands take one argument; improve + # if/when needed raise UnknownCommandError() + if verb == 'git': + try: + subverb, args = args.split(None, 1) + except ValueError: + # all known "git foo" commands take one argument; improve + # if/when needed + raise UnknownCommandError() + verb = '%s %s' % (verb, subverb) + if (verb not in COMMANDS_WRITE and verb not in COMMANDS_READONLY): raise UnknownCommandError() |