Skip to content
Snippets Groups Projects
Commit 3233b39d756f authored by Martin Geisler's avatar Martin Geisler
Browse files

hgweb: initialize permhooks at definition time

This is simpler than creating it empty and then appending the default
checkauthz hook 50 lines below.
parent ef1217a7f206
No related branches found
No related tags found
No related merge requests found
......@@ -17,12 +17,6 @@
HTTP_METHOD_NOT_ALLOWED = 405
HTTP_SERVER_ERROR = 500
# Hooks for hgweb permission checks; extensions can add hooks here. Each hook
# is invoked like this: hook(hgweb, request, operation), where operation is
# either read, pull or push. Hooks should either raise an ErrorResponse
# exception, or just return.
# It is possible to do both authentication and authorization through this.
permhooks = []
def checkauthz(hgweb, req, op):
'''Check permission for operation based on request data (including
......@@ -65,8 +59,14 @@
if not result:
raise ErrorResponse(HTTP_UNAUTHORIZED, 'push not authorized')
# Add the default permhook, which provides simple authorization.
permhooks.append(checkauthz)
# Hooks for hgweb permission checks; extensions can add hooks here.
# Each hook is invoked like this: hook(hgweb, request, operation),
# where operation is either read, pull or push. Hooks should either
# raise an ErrorResponse exception, or just return.
#
# It is possible to do both authentication and authorization through
# this.
permhooks = [checkauthz]
class ErrorResponse(Exception):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment