[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [bridgedb/master] Cleanup imports in bridgedb.HTTPServer.
commit dd67a2830d4366f966e780818abc7c94fede16bf
Author: Isis Lovecruft <isis@xxxxxxxxxxxxxx>
Date: Tue Mar 25 22:13:18 2014 +0000
Cleanup imports in bridgedb.HTTPServer.
* CHANGE all objects named `resource` to something more specific,
otherwise we cannot do `from twisted.web import resource`.
---
lib/bridgedb/HTTPServer.py | 61 ++++++++++++++++++----------------
lib/bridgedb/test/test_HTTPServer.py | 6 ++--
2 files changed, 36 insertions(+), 31 deletions(-)
diff --git a/lib/bridgedb/HTTPServer.py b/lib/bridgedb/HTTPServer.py
index 0de984b..c55e668 100644
--- a/lib/bridgedb/HTTPServer.py
+++ b/lib/bridgedb/HTTPServer.py
@@ -16,11 +16,11 @@ import os
from twisted.internet import reactor
from twisted.internet.error import CannotListenError
-import twisted.web.resource
from twisted.web.server import Site
+from twisted.python import filepath
+from twisted.web import resource
from twisted.web import static
from twisted.web.util import redirectTo
-from twisted.python import filepath
import bridgedb.Dist
import bridgedb.I18n as I18n
@@ -28,11 +28,12 @@ import bridgedb.Util as Util
from bridgedb import captcha
from bridgedb import crypto
-from bridgedb.Filters import filterBridgesByIP6, filterBridgesByIP4
+from bridgedb import txrecaptcha
+from bridgedb.Filters import filterBridgesByIP4
+from bridgedb.Filters import filterBridgesByIP6
from bridgedb.Filters import filterBridgesByTransport
from bridgedb.Filters import filterBridgesByNotBlockedIn
from bridgedb.parse import headers
-from bridgedb import txrecaptcha
from ipaddr import IPv4Address, IPv6Address
from random import randint
@@ -111,15 +112,15 @@ def replaceErrorPage(error, template_name=None):
return rendered
-class CaptchaProtectedResource(twisted.web.resource.Resource):
+class CaptchaProtectedResource(resource.Resource):
"""A general resource protected by some form of CAPTCHA."""
isLeaf = True
- def __init__(self, useForwardedHeader=False, resource=None):
- twisted.web.resource.Resource.__init__(self)
+ def __init__(self, useForwardedHeader=False, protectedResource=None):
+ resource.Resource.__init__(self)
self.useForwardedHeader = useForwardedHeader
- self.resource = resource
+ self.resource = protectedResource
def getClientIP(self, request):
ip = None
@@ -235,8 +236,9 @@ class GimpCaptchaProtectedResource(CaptchaProtectedResource):
"""
def __init__(self, secretKey=None, publicKey=None, hmacKey=None,
- captchaDir='', useForwardedHeader=False, resource=None):
- """Protect a **resource** via this one, using a local CAPTCHA cache.
+ captchaDir='', useForwardedHeader=False,
+ protectedResource=None):
+ """Protect a resource via this one, using a local CAPTCHA cache.
:param str secretkey: A PKCS#1 OAEP-padded, private RSA key, used for
verifying the client's solution to the CAPTCHA. See
@@ -253,11 +255,12 @@ class GimpCaptchaProtectedResource(CaptchaProtectedResource):
are stored. See the ``GIMP_CAPTCHA_DIR`` config setting.
:param bool useForwardedHeader: If ``True``, obtain the client's IP
address from the ``X-Forwarded-For`` HTTP header.
- :type resource: :api:`twisted.web.resource.Resource`
- :param resource: The resource to serve if the client successfully
- passes the CAPTCHA challenge.
+ :type protectedResource: :api:`twisted.web.resource.Resource`
+ :param protectedResource: The resource to serve if the client
+ successfully passes the CAPTCHA challenge.
"""
- CaptchaProtectedResource.__init__(self, useForwardedHeader, resource)
+ CaptchaProtectedResource.__init__(self, useForwardedHeader,
+ protectedResource)
self.secretKey = secretKey
self.publicKey = publicKey
self.hmacKey = hmacKey
@@ -358,8 +361,9 @@ class ReCaptchaProtectedResource(CaptchaProtectedResource):
"""
def __init__(self, recaptchaPrivKey='', recaptchaPubKey='', remoteip='',
- useForwardedHeader=False, resource=None):
- CaptchaProtectedResource.__init__(self, useForwardedHeader, resource)
+ useForwardedHeader=False, protectedResource=None):
+ CaptchaProtectedResource.__init__(self, useForwardedHeader,
+ protectedResource)
self.recaptchaPrivKey = recaptchaPrivKey
self.recaptchaPubKey = recaptchaPubKey
self.recaptchaRemoteIP = remoteip
@@ -472,7 +476,7 @@ class ReCaptchaProtectedResource(CaptchaProtectedResource):
return CaptchaProtectedResource.render_POST(self, request)
-class WebResourceOptions(twisted.web.resource.Resource):
+class WebResourceOptions(resource.Resource):
"""This resource is used by Twisted Web to give a web page with
additional options that the user may use to specify the criteria
the returned bridges should meet.
@@ -482,7 +486,7 @@ class WebResourceOptions(twisted.web.resource.Resource):
def __init__(self):
"""Create a new WebResource for the Options page"""
gettext.install("bridgedb", unicode=True)
- twisted.web.resource.Resource.__init__(self)
+ resource.Resource.__init__(self)
def render_GET(self, request):
rtl = False
@@ -501,7 +505,7 @@ class WebResourceOptions(twisted.web.resource.Resource):
render_POST = render_GET
-class WebResourceBridges(twisted.web.resource.Resource):
+class WebResourceBridges(resource.Resource):
"""This resource is used by Twisted Web to give a web page with some
bridges in response to a request."""
@@ -524,7 +528,7 @@ class WebResourceBridges(twisted.web.resource.Resource):
fingerprint in the response?
"""
gettext.install("bridgedb", unicode=True)
- twisted.web.resource.Resource.__init__(self)
+ resource.Resource.__init__(self)
self.distributor = distributor
self.schedule = schedule
self.nBridgesToGive = N
@@ -693,7 +697,7 @@ class WebResourceBridges(twisted.web.resource.Resource):
return rendered
-class WebRoot(twisted.web.resource.Resource):
+class WebRoot(resource.Resource):
"""The parent resource of all other documents hosted by the webserver."""
isLeaf = True
@@ -743,7 +747,7 @@ def addWebServer(cfg, dist, sched):
:type sched: :class:`bridgedb.Time.IntervalSchedule`
:param sched: DOCDOC
"""
- httpdist = twisted.web.resource.Resource()
+ httpdist = resource.Resource()
httpdist.putChild('', WebRoot())
httpdist.putChild('robots.txt',
static.File(os.path.join(template_root, 'robots.txt')))
@@ -751,9 +755,10 @@ def addWebServer(cfg, dist, sched):
static.File(os.path.join(template_root, 'assets/')))
httpdist.putChild('options', WebResourceOptions())
- resource = WebResourceBridges(dist, sched, cfg.HTTPS_N_BRIDGES_PER_ANSWER,
- cfg.HTTP_USE_IP_FROM_FORWARDED_HEADER,
- includeFingerprints=cfg.HTTPS_INCLUDE_FINGERPRINTS)
+ bridgesResource = WebResourceBridges(
+ dist, sched, cfg.HTTPS_N_BRIDGES_PER_ANSWER,
+ cfg.HTTP_USE_IP_FROM_FORWARDED_HEADER,
+ includeFingerprints=cfg.HTTPS_INCLUDE_FINGERPRINTS)
if cfg.RECAPTCHA_ENABLED:
protected = ReCaptchaProtectedResource(
@@ -761,7 +766,7 @@ def addWebServer(cfg, dist, sched):
recaptchaPubKey=cfg.RECAPTCHA_PUB_KEY,
remoteip=cfg.RECAPTCHA_REMOTEIP,
useForwardedHeader=cfg.HTTP_USE_IP_FROM_FORWARDED_HEADER,
- resource=resource)
+ protectedResource=bridgesResource)
httpdist.putChild('bridges', protected)
elif cfg.GIMP_CAPTCHA_ENABLED:
@@ -779,10 +784,10 @@ def addWebServer(cfg, dist, sched):
hmacKey=hmacKey,
captchaDir=cfg.GIMP_CAPTCHA_DIR,
useForwardedHeader=cfg.HTTP_USE_IP_FROM_FORWARDED_HEADER,
- resource=resource)
+ protectedResource=bridgesResource)
httpdist.putChild('bridges', protected)
else:
- httpdist.putChild('bridges', resource)
+ httpdist.putChild('bridges', bridgesResource)
site = Site(httpdist)
diff --git a/lib/bridgedb/test/test_HTTPServer.py b/lib/bridgedb/test/test_HTTPServer.py
index 9f241d9..57f0d80 100644
--- a/lib/bridgedb/test/test_HTTPServer.py
+++ b/lib/bridgedb/test/test_HTTPServer.py
@@ -59,7 +59,7 @@ class CaptchaProtectedResourceTests(unittest.TestCase):
self.protectedResource = HTTPServer.WebResourceBridges(self.dist,
self.sched)
self.captchaResource = HTTPServer.CaptchaProtectedResource(
- useForwardedHeader=True, resource=self.protectedResource)
+ useForwardedHeader=True, protectedResource=self.protectedResource)
self.root.putChild(self.pagename, self.captchaResource)
def test_render_GET_noCaptcha(self):
@@ -155,7 +155,7 @@ class GimpCaptchaProtectedResourceTests(unittest.TestCase):
hmacKey='abcdefghijklmnopqrstuvwxyz012345',
captchaDir='captchas',
useForwardedHeader=True,
- resource=self.protectedResource)
+ protectedResource=self.protectedResource)
self.root.putChild(self.pagename, self.captchaResource)
@@ -281,7 +281,7 @@ class ReCaptchaProtectedResourceTests(unittest.TestCase):
recaptchaPubKey='23',
remoteip='111.111.111.111',
useForwardedHeader=True,
- resource=self.protectedResource)
+ protectedResource=self.protectedResource)
self.root.putChild(self.pagename, self.captchaResource)
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits