[z3-checkins] r42381 - z3/deliverance/trunk/deliverance

ltucker at codespeak.net ltucker at codespeak.net
Fri Apr 27 21:24:40 CEST 2007


Author: ltucker
Date: Fri Apr 27 21:24:39 2007
New Revision: 42381

Modified:
   z3/deliverance/trunk/deliverance/wsgimiddleware.py
Log:
do not pass via header in external sub-requests to avoid appearing to be a loop if requesting upstream

Modified: z3/deliverance/trunk/deliverance/wsgimiddleware.py
==============================================================================
--- z3/deliverance/trunk/deliverance/wsgimiddleware.py	(original)
+++ z3/deliverance/trunk/deliverance/wsgimiddleware.py	Fri Apr 27 21:24:39 2007
@@ -372,8 +372,19 @@
             return InternalResourceFetcher(environ, uri[len(internalBaseURL):],
                                            self.app)
         else:
-            return ExternalResourceFetcher(environ, uri)        
+	    out_environ = self.cleaned_environ(environ)
+            return ExternalResourceFetcher(out_environ, uri)        
 
+    def cleaned_environ(self, environ):
+        """
+        this implements the policy for manipulating
+        outbound environments.
+        """
+    	cleaned = environ.copy()
+	if 'HTTP_VIA' in cleaned:
+            del cleaned['HTTP_VIA']
+        return cleaned
+    
 
     def get_resource_uris(self, rules): 
         """


More information about the z3-checkins mailing list