Aldo Cortesi
6e301f37d0
Only set OP_NO_COMPRESSION by default if it exists in our version of OpenSSL
...
We'll need to start testing under both new and old versions of OpenSSL
somehow to catch these...
2015-06-18 12:18:22 +12:00
Aldo Cortesi
4152b14387
Merge pull request #71 from Kriechi/landscape
...
fix warnings and code smells
2015-06-18 12:07:20 +12:00
Thomas Kriechbaumer
836b1eab97
fix warnings and code smells
...
use prospector to find them
2015-06-17 13:10:27 +02:00
Thomas Kriechbaumer
eb823a04a1
http2: improve :authority header
2015-06-16 15:00:29 +02:00
Thomas Kriechbaumer
abb37a3ef5
http2: improve test suite
2015-06-16 15:00:28 +02:00
Thomas Kriechbaumer
20c136e070
http2: return stream_id from request for response
2015-06-16 15:00:28 +02:00
Thomas Kriechbaumer
1c124421e3
http2: fix header_block_fragments and length
2015-06-16 15:00:28 +02:00
Thomas Kriechbaumer
d0a9d3cdda
http2: only first headers frame as END_STREAM flag
2015-06-16 15:00:28 +02:00
Thomas Kriechbaumer
e3db241a2f
http2: improve frame output
2015-06-16 15:00:28 +02:00
Thomas Kriechbaumer
79ff439930
add elliptic curve during TLS handshake
2015-06-16 15:00:28 +02:00
Thomas Kriechbaumer
12702b9a01
http2: improve frame output
2015-06-16 14:55:08 +02:00
Aldo Cortesi
bb206323ab
Merge pull request #69 from kyle-m/master
...
Adding support for upstream certificate validation when using SSL/TLS…
2015-06-16 10:34:09 +12:00
Kyle Morton
fe764cde52
Adding support for upstream certificate validation when using SSL/TLS with an
...
instance of TCPClient.
2015-06-15 10:18:54 -07:00
Thomas Kriechbaumer
0d137eac6f
simplify ALPN
2015-06-14 19:50:35 +02:00
Thomas Kriechbaumer
8d71a5b4ab
http2: add authority header
2015-06-14 19:43:32 +02:00
Thomas Kriechbaumer
9c6d237d02
add new TLS methods
2015-06-14 18:17:53 +02:00
Thomas Kriechbaumer
5fab755a05
add more tests
2015-06-12 15:27:29 +02:00
Thomas Kriechbaumer
a901bc3032
http2: add response creation
2015-06-12 14:45:51 +02:00
Thomas Kriechbaumer
8ea157775d
http2: general improvements
2015-06-12 14:42:07 +02:00
Thomas Kriechbaumer
eeaed93a83
improve ALPN integration
2015-06-11 15:37:17 +02:00
Thomas Kriechbaumer
0595585974
fix coding style
2015-06-08 17:00:03 +02:00
Thomas Kriechbaumer
fdbb3b76cf
http2: add warning if raw data looks like HTTP/1
2015-06-08 16:54:19 +02:00
Thomas Kriechbaumer
abbe88c8ce
fix non-ALPN supported OpenSSL-related tests
2015-06-08 13:25:42 +02:00
Thomas Kriechbaumer
4666d1e7bb
improve ALPN support on travis
2015-06-08 12:52:06 +02:00
Thomas Kriechbaumer
359ef46905
fix coding style
2015-06-08 12:29:39 +02:00
Aldo Cortesi
9c48bfb2a5
http2: ditch the logging for now
...
The API is well designed: it looks like we can get all the information
we need to expose debugging in the caller of the API.
2015-06-06 12:30:53 +12:00
Aldo Cortesi
f2d784896d
http2: resolve module structure and circular dependencies
...
- Move implementation out of __init__.py to protocol.py (an anti-pattern
because it makes the kind of structural refactoring we need hard)
- protocol imports frame, frame does not import protocol. To do this, we
shift the default settings to frame. If this feels wrong, we can move
them to a separate module (defaults.py?.).
2015-06-06 12:26:48 +12:00
Aldo Cortesi
fcaabeb455
Merge pull request #65 from Kriechi/h2-client
...
HTTP/2 protocol definition
2015-06-06 11:54:35 +12:00
Thomas Kriechbaumer
f2db8abbe8
use open instead of file
2015-06-05 20:52:11 +02:00
Thomas Kriechbaumer
fdc908cb98
http2: add protocol tests
2015-06-05 20:19:48 +02:00
Thomas Kriechbaumer
f003f87197
http2: rename module and refactor as strategy
2015-06-05 13:33:37 +02:00
Thomas Kriechbaumer
623dd850e0
http2: add logging and error handling
2015-06-05 13:33:37 +02:00
Thomas Kriechbaumer
40fa113116
http2: change header_block_fragment handling
2015-06-05 13:33:37 +02:00
Thomas Kriechbaumer
5cecbdc168
http2: add basic protocol handling
2015-06-05 13:33:37 +02:00
Thomas Kriechbaumer
e4c129026f
http2: introduce state for connection objects
2015-06-05 13:33:37 +02:00
Thomas Kriechbaumer
436291764c
http2: fix default settings
2015-06-05 13:33:37 +02:00
Thomas Kriechbaumer
9883509f89
simplify default ssl params for test servers
2015-06-05 13:33:37 +02:00
Aldo Cortesi
0269d0fb8b
repr for websocket frames
2015-06-05 17:08:22 +12:00
Aldo Cortesi
2d9b9be1f4
Revert "tcp: clear_log to clear socket logs"
...
start_log also clears the log, which is good enough.
This reverts commit 4ca62e0d9b
.
2015-06-05 11:50:29 +12:00
Aldo Cortesi
4ca62e0d9b
tcp: clear_log to clear socket logs
2015-06-05 11:42:06 +12:00
Aldo Cortesi
113c5c187f
Bump version
2015-06-04 11:14:47 +12:00
Maximilian Hils
c725325a78
Merge pull request #61 from Kriechi/distribute-cffi
...
distribute cffi correctly
2015-05-31 11:44:27 +02:00
Aldo Cortesi
35856ead07
websockets: nicer human readable
2015-05-31 17:24:44 +12:00
Aldo Cortesi
f7bd690e3a
When we see an incomplete read with 0 bytes, it's a disconnect
...
Partially fixes mitmproxy/mitmproxy:#593
2015-05-31 17:18:55 +12:00
Aldo Cortesi
73376e605a
Save first byte timestamp for writers too.
2015-05-31 16:54:14 +12:00
Aldo Cortesi
4ec181c140
Move version check to netlib, unit test it.
2015-05-31 13:12:01 +12:00
Thomas Kriechbaumer
b395049a85
distribute cffi correctly
2015-05-30 15:15:08 +02:00
Aldo Cortesi
f76bfabc5d
Adjust pep8 parameters, reformat
2015-05-30 12:02:58 +12:00
Thomas Kriechbaumer
c32d8189fa
cleanup imports
2015-05-29 17:00:38 +02:00
Thomas Kriechbaumer
e2de49596d
add HTTP/2-capable client
2015-05-29 15:31:22 +02:00