diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2015-08-16 21:47:42 +1200 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2015-08-16 21:47:42 +1200 |
commit | 7da47bd7203a5163bc182a48abda9cd6501512f3 (patch) | |
tree | 5b8c48df41f037e9e6477bf2a2f93f463e7040e0 /netlib | |
parent | 99e89a1efc9871e8956460d1e40cf8282f14babd (diff) | |
parent | 85cede47aa8f9ffd770ad2830084e53b04b4e77e (diff) | |
download | mitmproxy-7da47bd7203a5163bc182a48abda9cd6501512f3.tar.gz mitmproxy-7da47bd7203a5163bc182a48abda9cd6501512f3.tar.bz2 mitmproxy-7da47bd7203a5163bc182a48abda9cd6501512f3.zip |
Merge branch 'master' of ssh.github.com:mitmproxy/netlib
Diffstat (limited to 'netlib')
-rw-r--r-- | netlib/tcp.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/netlib/tcp.py b/netlib/tcp.py index c355cfdd..b3171a1c 100644 --- a/netlib/tcp.py +++ b/netlib/tcp.py @@ -403,6 +403,7 @@ class _Connection(object): cipher_list=None, alpn_protos=None, alpn_select=None, + alpn_select_callback=None, ): """ Creates an SSL Context. @@ -457,7 +458,7 @@ class _Connection(object): if alpn_protos is not None: # advertise application layer protocols context.set_alpn_protos(alpn_protos) - elif alpn_select is not None: + elif alpn_select is not None and alpn_select_callback is None: # select application layer protocol def alpn_select_callback(conn_, options): if alpn_select in options: @@ -465,6 +466,10 @@ class _Connection(object): else: # pragma no cover return options[0] context.set_alpn_select_callback(alpn_select_callback) + elif alpn_select_callback is not None and alpn_select is None: + context.set_alpn_select_callback(alpn_select_callback) + elif alpn_select_callback is not None and alpn_select is not None: + raise NetLibError("ALPN error: only define alpn_select (string) OR alpn_select_callback (method).") return context |