aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--netlib/http/cookies.py1
-rw-r--r--netlib/http/headers.py14
-rw-r--r--netlib/http/http1/assemble.py1
-rw-r--r--netlib/http/message.py17
-rw-r--r--netlib/socks.py2
-rw-r--r--netlib/tcp.py1
-rw-r--r--netlib/tutils.py3
-rw-r--r--netlib/websockets/frame.py2
-rw-r--r--netlib/websockets/protocol.py25
-rw-r--r--netlib/wsgi.py8
10 files changed, 43 insertions, 31 deletions
diff --git a/netlib/http/cookies.py b/netlib/http/cookies.py
index ae041174..2be93e18 100644
--- a/netlib/http/cookies.py
+++ b/netlib/http/cookies.py
@@ -27,6 +27,7 @@ variants. Serialization follows RFC6265.
# TODO: Disallow LHS-only Cookie values
+
def _read_until(s, start, term):
"""
Read until one of the characters in term is reached.
diff --git a/netlib/http/headers.py b/netlib/http/headers.py
index 60d3f429..2caf8d51 100644
--- a/netlib/http/headers.py
+++ b/netlib/http/headers.py
@@ -14,12 +14,18 @@ from ..utils import always_bytes
# See also: http://lucumr.pocoo.org/2013/7/2/the-updated-guide-to-unicode/
if six.PY2: # pragma: no cover
- _native = lambda x: x
- _always_bytes = lambda x: x
+ def _native(x):
+ return x
+
+ def _always_bytes(x):
+ return x
else:
# While headers _should_ be ASCII, it's not uncommon for certain headers to be utf-8 encoded.
- _native = lambda x: x.decode("utf-8", "surrogateescape")
- _always_bytes = lambda x: always_bytes(x, "utf-8", "surrogateescape")
+ def _native(x):
+ return x.decode("utf-8", "surrogateescape")
+
+ def _always_bytes(x):
+ return always_bytes(x, "utf-8", "surrogateescape")
class Headers(MultiDict):
diff --git a/netlib/http/http1/assemble.py b/netlib/http/http1/assemble.py
index 1e73cc2b..2f941877 100644
--- a/netlib/http/http1/assemble.py
+++ b/netlib/http/http1/assemble.py
@@ -3,6 +3,7 @@ from __future__ import absolute_import, print_function, division
from ... import utils
from ...exceptions import HttpException
+
def assemble_request(request):
if request.content is None:
raise HttpException("Cannot assemble flow with missing content")
diff --git a/netlib/http/message.py b/netlib/http/message.py
index b7f42515..13d401a7 100644
--- a/netlib/http/message.py
+++ b/netlib/http/message.py
@@ -6,14 +6,21 @@ import six
from .headers import Headers
from .. import encoding, utils
+from ..utils import always_bytes
if six.PY2: # pragma: no cover
- _native = lambda x: x
- _always_bytes = lambda x: x
+ def _native(x):
+ return x
+
+ def _always_bytes(x):
+ return x
else:
- # While the HTTP head _should_ be ASCII, it's not uncommon for certain headers to be utf-8 encoded.
- _native = lambda x: x.decode("utf-8", "surrogateescape")
- _always_bytes = lambda x: utils.always_bytes(x, "utf-8", "surrogateescape")
+ # While headers _should_ be ASCII, it's not uncommon for certain headers to be utf-8 encoded.
+ def _native(x):
+ return x.decode("utf-8", "surrogateescape")
+
+ def _always_bytes(x):
+ return always_bytes(x, "utf-8", "surrogateescape")
class MessageData(utils.Serializable):
diff --git a/netlib/socks.py b/netlib/socks.py
index 57ccd1be..675fa784 100644
--- a/netlib/socks.py
+++ b/netlib/socks.py
@@ -147,7 +147,7 @@ class UsernamePasswordAuth(object):
class UsernamePasswordAuthResponse(object):
- __slots__ = ("ver", "status")
+ __slots__ = ("ver", "status")
def __init__(self, ver, status):
self.ver = ver
diff --git a/netlib/tcp.py b/netlib/tcp.py
index d26bb5f7..ad75cff8 100644
--- a/netlib/tcp.py
+++ b/netlib/tcp.py
@@ -71,6 +71,7 @@ sslversion_choices = {
"TLSv1_2": (SSL.TLSv1_2_METHOD, SSL_BASIC_OPTIONS),
}
+
class SSLKeyLogger(object):
def __init__(self, filename):
diff --git a/netlib/tutils.py b/netlib/tutils.py
index 18d632f0..b8a3bafc 100644
--- a/netlib/tutils.py
+++ b/netlib/tutils.py
@@ -91,8 +91,7 @@ class RaisesContext(object):
test_data = utils.Data(__name__)
# FIXME: Temporary workaround during repo merge.
-import os
-test_data.dirname = os.path.join(test_data.dirname,"..","test","netlib")
+test_data.dirname = os.path.join(test_data.dirname, "..", "test", "netlib")
def treq(**kwargs):
diff --git a/netlib/websockets/frame.py b/netlib/websockets/frame.py
index fce2c9d3..da5a97f3 100644
--- a/netlib/websockets/frame.py
+++ b/netlib/websockets/frame.py
@@ -14,7 +14,7 @@ from netlib import utils
MAX_16_BIT_INT = (1 << 16)
MAX_64_BIT_INT = (1 << 64)
-DEFAULT=object()
+DEFAULT = object()
OPCODE = utils.BiDi(
CONTINUE=0x00,
diff --git a/netlib/websockets/protocol.py b/netlib/websockets/protocol.py
index 940132ad..101d5484 100644
--- a/netlib/websockets/protocol.py
+++ b/netlib/websockets/protocol.py
@@ -1,18 +1,18 @@
+"""
+Colleciton of utility functions that implement small portions of the RFC6455
+WebSockets Protocol Useful for building WebSocket clients and servers.
+Emphassis is on readabilty, simplicity and modularity, not performance or
+completeness
+This is a work in progress and does not yet contain all the utilites need to
+create fully complient client/servers #
+Spec: https://tools.ietf.org/html/rfc6455
-# Colleciton of utility functions that implement small portions of the RFC6455
-# WebSockets Protocol Useful for building WebSocket clients and servers.
-#
-# Emphassis is on readabilty, simplicity and modularity, not performance or
-# completeness
-#
-# This is a work in progress and does not yet contain all the utilites need to
-# create fully complient client/servers #
-# Spec: https://tools.ietf.org/html/rfc6455
+The magic sha that websocket servers must know to prove they understand
+RFC6455
+"""
-# The magic sha that websocket servers must know to prove they understand
-# RFC6455
from __future__ import absolute_import
import base64
import hashlib
@@ -94,21 +94,18 @@ class WebsocketsProtocol(object):
upgrade="websocket"
)
-
@classmethod
def check_client_handshake(self, headers):
if headers.get("upgrade") != "websocket":
return
return headers.get("sec-websocket-key")
-
@classmethod
def check_server_handshake(self, headers):
if headers.get("upgrade") != "websocket":
return
return headers.get("sec-websocket-accept")
-
@classmethod
def create_server_nonce(self, client_nonce):
return base64.b64encode(hashlib.sha1(client_nonce + websockets_magic).digest())
diff --git a/netlib/wsgi.py b/netlib/wsgi.py
index e1259cba..cde562f8 100644
--- a/netlib/wsgi.py
+++ b/netlib/wsgi.py
@@ -1,15 +1,15 @@
from __future__ import (absolute_import, print_function, division)
-from io import BytesIO
-import urllib
+
import time
import traceback
-
import six
+from io import BytesIO
from six.moves import urllib
from netlib.utils import always_bytes, native
from . import http, tcp
+
class ClientConn(object):
def __init__(self, address):
@@ -140,7 +140,7 @@ class WSGIAdaptor(object):
elif state["status"]:
raise AssertionError('Response already started')
state["status"] = status
- state["headers"] = http.Headers([[always_bytes(k), always_bytes(v)] for k,v in headers])
+ state["headers"] = http.Headers([[always_bytes(k), always_bytes(v)] for k, v in headers])
if exc_info:
self.error_page(soc, state["headers_sent"], traceback.format_tb(exc_info[2]))
state["headers_sent"] = True