]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
UTF8-encode more user-supplied strings in httpclient (headers and user-agent)
authorBen Darnell <bdarnell@beaker.local>
Mon, 28 Jun 2010 16:52:46 +0000 (09:52 -0700)
committerBen Darnell <bdarnell@beaker.local>
Mon, 28 Jun 2010 16:52:46 +0000 (09:52 -0700)
tornado/httpclient.py

index e551bbf9fb1efd12e91b27717de0b76f8b3b875d..4d29da66f5c7abbb2ffde27fb28575edb1c2448e 100644 (file)
@@ -619,7 +619,7 @@ def _curl_create(max_simultaneous_connections=None):
 def _curl_setup_request(curl, request, buffer, headers):
     curl.setopt(pycurl.URL, request.url)
     curl.setopt(pycurl.HTTPHEADER,
-                ["%s: %s" % i for i in request.headers.iteritems()])
+                [_utf8("%s: %s" % i) for i in request.headers.iteritems()])
     if request.header_callback:
         curl.setopt(pycurl.HEADERFUNCTION, request.header_callback)
     else:
@@ -634,7 +634,7 @@ def _curl_setup_request(curl, request, buffer, headers):
     curl.setopt(pycurl.CONNECTTIMEOUT, int(request.connect_timeout))
     curl.setopt(pycurl.TIMEOUT, int(request.request_timeout))
     if request.user_agent:
-        curl.setopt(pycurl.USERAGENT, request.user_agent)
+        curl.setopt(pycurl.USERAGENT, _utf8(request.user_agent))
     else:
         curl.setopt(pycurl.USERAGENT, "Mozilla/5.0 (compatible; pycurl)")
     if request.network_interface: