https://www.mediawiki.org/wiki/Special:Code/MediaWiki/111718

Revision: 111718
Author:   ben
Date:     2012-02-17 02:10:16 +0000 (Fri, 17 Feb 2012)
Log Message:
-----------
correcting add header syntax, using a default user-agent if needed.

Modified Paths:
--------------
    trunk/extensions/SwiftMedia/wmf/rewrite.py

Modified: trunk/extensions/SwiftMedia/wmf/rewrite.py
===================================================================
--- trunk/extensions/SwiftMedia/wmf/rewrite.py  2012-02-17 02:04:49 UTC (rev 
111717)
+++ trunk/extensions/SwiftMedia/wmf/rewrite.py  2012-02-17 02:10:16 UTC (rev 
111718)
@@ -104,6 +104,7 @@
         self.key = conf['key'].strip()
         self.thumbhost = conf['thumbhost'].strip()
         self.writethumb = 'writethumb' in conf
+        self.user_agent = conf['user_agent'].strip()
         self.bind_port = conf['bind_port'].strip()
         self.shard_containers = conf['shard_containers'].strip() #all, some, 
none
         if (self.shard_containers == 'some'):
@@ -127,9 +128,14 @@
         # using urllib2.url()
         opener = urllib2.build_opener()
         # Pass on certain headers from the caller squid to the scalers
-        for header_to_pass in ['X-Forwarded-For', 'X-Original-URI', 
'User-Agent']:
+        opener.addheaders = []
+        if reqorig.headers.get('User-Agent') != None:
+            opener.addheaders.append(('User-Agent', 
reqorig.headers.get('User-Agent')))
+        else:
+            opener.addheaders.append(('User-Agent', self.user_agent))
+        for header_to_pass in ['X-Forwarded-For', 'X-Original-URI']:
             if reqorig.headers.get( header_to_pass ) != None:
-                opener.addheaders[header_to_pass] = reqorig.headers.get( 
header_to_pass )
+                opener.addheaders.append((header_to_pass, reqorig.headers.get( 
header_to_pass )))
         # At least in theory, we shouldn't be handing out links to originals
         # that we don't have (or in the case of thumbs, can't generate).
         # However, someone may have a formerly valid link to a file, so we


_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to