Commit Graph

8984 Commits

Author SHA1 Message Date
Maximilian Hils
9f89c23a52 [sans-io] use asyncio_utils 2020-12-12 21:24:20 +01:00
Maximilian Hils
5bf07b2176 [sans-io] clientplayback: don't catch cancellederror 2020-12-12 21:24:20 +01:00
Maximilian Hils
b5f59a1297 [sans-io] test NextLayer behavior on connection close 2020-12-12 21:24:20 +01:00
Maximilian Hils
65870b729f [sans-io] improve tcp half close behavior 2020-12-12 21:24:20 +01:00
Maximilian Hils
c639fafd64 [sans-io] more testing, more bugfixes! 2020-12-12 21:24:20 +01:00
Maximilian Hils
38f006eb9a [sans-io] more http testing, more bugfixes! 2020-12-12 21:24:20 +01:00
Maximilian Hils
fdcdb28251 [sans-io] final fixes to pass h2spec 2020-12-12 21:24:20 +01:00
Maximilian Hils
25999ba9d4 [sans-io] http bugfixes! 2020-12-12 21:24:20 +01:00
Maximilian Hils
74f94fe5a3 disable asyncio debug mode, fix tests 2020-12-12 21:24:20 +01:00
Maximilian Hils
05968a29bb [sans-io] implement sans-io based replay 2020-12-12 21:24:19 +01:00
Maximilian Hils
895466bc59 [sans-io] enable sans-io by default 2020-12-12 21:24:19 +01:00
Maximilian Hils
238ea20884 [sans-io] make context.Connections serializable 2020-12-12 21:24:19 +01:00
Maximilian Hils
921594cbc0 [sans-io] add HTTP end timestamps 2020-12-12 21:24:19 +01:00
Maximilian Hils
7f1f072bd3 [sans-io] add timestamp attributes 2020-12-12 21:24:19 +01:00
Maximilian Hils
919d1277fd [sans-io] implement client/server (dis)connect events
semantic are slightly changed, so we change names as well.
2020-12-12 21:24:19 +01:00
Maximilian Hils
3fdbff3faa [sans-io] tlsconfig: add tests 2020-12-12 21:24:19 +01:00
Maximilian Hils
0234a44c84 [sans-io] tlsconfig: generate proper certificates 2020-12-12 21:24:19 +01:00
Maximilian Hils
decd2b8c80 [sans-io] add minimal benchmarks 2020-12-12 21:24:19 +01:00
Maximilian Hils
dd723c733e [sans-io] various fixes 2020-12-12 21:24:19 +01:00
Maximilian Hils
75b7b743c4 [sans-io] fix tls tests 2020-12-12 21:24:19 +01:00
Maximilian Hils
97285512f1 [sans-io] rely on kill message instead of subclass 2020-12-12 21:24:19 +01:00
Maximilian Hils
40fc542cf6 [sans-io] add flow killing, tests++ 2020-12-12 21:24:19 +01:00
Maximilian Hils
34d96da876 [sans-io] extend HTTP/2 fuzzing, fix found bugs 2020-12-12 21:24:19 +01:00
Maximilian Hils
0549d50a47 [sans-io] add HTTP/2 fuzzing, various other fixes 2020-12-12 21:24:19 +01:00
Maximilian Hils
aadc7538f1 [sans-io] typing++ 2020-12-12 21:24:19 +01:00
Maximilian Hils
87ec81e435 [sans-io] complete h1/h2 interop 2020-12-12 21:24:19 +01:00
Maximilian Hils
dee8fb7a39 [sans-io] h1: raise on HTTP trailers 2020-12-12 21:24:19 +01:00
Maximilian Hils
ffa5a69ebf [sans-io] h2 client (wip) 2020-12-12 21:24:19 +01:00
Maximilian Hils
0646a4f1ba [sans-io] h2++, typeize Placeholder 2020-12-12 21:24:19 +01:00
Maximilian Hils
742efae419 [sans-io] add minimal http2 server implementation 2020-12-12 21:24:19 +01:00
Maximilian Hils
a071beb662 [sans-io] remove http command queue 2020-12-12 21:24:19 +01:00
Maximilian Hils
21000fca2c [sans-io] close client conn on CONNECT failure 2020-12-12 21:24:19 +01:00
Maximilian Hils
b9e3b46fd8 [sans-io] add http fuzzing tests 2020-12-12 21:24:19 +01:00
Maximilian Hils
a568721e86 [sans-io] add tests for unreachable http servers 2020-12-12 21:24:19 +01:00
Maximilian Hils
f12b2b7e87 [sans-io] better sockname/peername naming, refs #3896 2020-12-12 21:24:19 +01:00
Maximilian Hils
c5cb0d2f0b [sans-io] implement support for Expect: 100-continue 2020-12-12 21:24:19 +01:00
Maximilian Hils
c00a78751e [sans-io] enable proxying by host header
This mirrors the current examples/complex/dns_spoofing.py script.
2020-12-12 21:24:19 +01:00
Maximilian Hils
3f9441ac5f [sans-io] finalize upstream proxy mode 2020-12-12 21:24:19 +01:00
Maximilian Hils
549eb8df4b [sans-io] upstream proxy tests and fixes 2020-12-12 21:24:19 +01:00
Maximilian Hils
605da3afb6 [sans-io] refactor TLS layer to be a tunnel 2020-12-12 21:24:19 +01:00
Maximilian Hils
da02f037cf [sans-io] add http upstream mode prototype 2020-12-12 21:24:19 +01:00
Maximilian Hils
a30a6758f3 [sans-io] fixes, fixes, fixes 2020-12-12 21:24:18 +01:00
Maximilian Hils
b2060356b6 [sans-io] wip: tls establishment semantics 2020-12-12 21:24:18 +01:00
Maximilian Hils
7efe27be74 [sans-io] refactor 2020-12-12 21:24:18 +01:00
Maximilian Hils
0740c673bd [sans-io] implement http streaming, refine error handling 2020-12-12 21:24:18 +01:00
Maximilian Hils
5671012163 [sans-io] make hooks explicit 2020-12-12 21:24:18 +01:00
Maximilian Hils
7ea17b859c [sans-io] remove old layers 2020-12-12 21:24:18 +01:00
Maximilian Hils
03801aecb2 [sans-io] split http layer into smaller modules 2020-12-12 21:24:18 +01:00
Maximilian Hils
9e6548e581 [sans-io] tls: handle untrusted mitmproxy certs 2020-12-12 21:24:18 +01:00
Maximilian Hils
b075b7fc15 [sans-io] tls: handle invalid clienthellos 2020-12-12 21:24:18 +01:00