From f8bd7df3fdccc83c8b67ea1e20b3e65ed62cf12f Mon Sep 17 00:00:00 2001
From: Michael Hanselmann <hansmi@google.com>
Date: Fri, 19 Dec 2008 12:57:07 +0000
Subject: [PATCH] ganeti.http: Prepare authentication for HTTP server

The authentication class will override PreHandleRequest.

Reviewed-by: amishchenko
---
 lib/http/server.py | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/lib/http/server.py b/lib/http/server.py
index 6a359df0b..a751a15a9 100644
--- a/lib/http/server.py
+++ b/lib/http/server.py
@@ -308,6 +308,10 @@ class _HttpServerRequestExecutor(object):
     handler_context = _HttpServerRequest(self.request_msg)
 
     try:
+      # Authentication, etc.
+      self.server.PreHandleRequest(handler_context)
+
+      # Call actual request handler
       result = self.server.HandleRequest(handler_context)
     except (http.HttpException, KeyboardInterrupt, SystemExit):
       raise
@@ -501,6 +505,13 @@ class HttpServer(http.HttpBase):
     else:
       self._children.append(pid)
 
+  def PreHandleRequest(self, req):
+    """Called before handling a request.
+
+    Can be overriden by a subclass.
+
+    """
+
   def HandleRequest(self, req):
     """Handles a request.
 
-- 
GitLab