Maximilian Hils
|
8f516bfd81
|
[sans-io] HTTP/2: reset half-closed streams on error
|
2020-12-12 21:24:21 +01:00 |
|
Maximilian Hils
|
66868b1186
|
[sans-io] HTTP/2: protocol fixes, tests++
|
2020-12-12 21:24:21 +01:00 |
|
Maximilian Hils
|
52479e94bb
|
[sans-io] include non-standard ports in host header, refs #4280
|
2020-12-12 21:24:21 +01:00 |
|
Maximilian Hils
|
8ae2ab2aca
|
[sans-io] fix HTTP/2 stream cancellation
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
d32a5d5f33
|
[sans-io] websockets: fix bugs, 100% test coverage 🎉
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
a4a0428bc6
|
[sans-io] handle 101 switching protocols
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
19f8cd0839
|
[sans-io] add websocket proof-of-concept
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
222d5cedc8
|
[sans-io] HTTP/1: Add tests for HTTP -> TCP pipe behavior
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
4f0cbec308
|
[sans-io] http: emit error hook when killed
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
41f69749f2
|
[sans-io] enable "Secure Web Proxy" mode
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
1d4bdeb68d
|
[sans-io] HTTP/2: enable END_STREAM for HEADERS
Akamai really doesn't like empty DATA frames with END_STREAM set,
so we mitigate this by indicating end stream in the MessageHeaders events.
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
3c061b7863
|
[sans-io] fix playbook SendData merging
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
1112135920
|
[sans-io] HTTP/2: respect max_concurrency_limit
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
485c8eb3e9
|
[sans-io] fix HTTP/2 -> HTTP/1 interop, limit max connections / server / client
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
32208b14eb
|
[sans-io] fix HTTP/2 stream concurrency
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
553f102d6e
|
[sans-io] playbook: fix multiple placeholders of same type
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
9251f7820a
|
[sans-io] fix HTTP/2 client aborts
|
2020-12-12 21:24:20 +01:00 |
|
Maximilian Hils
|
3bffcf5e2f
|
[sans-io] fix tcp half close behavior
|
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
|
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
|
3fdbff3faa
|
[sans-io] tlsconfig: add tests
|
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
|
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
|
87ec81e435
|
[sans-io] complete h1/h2 interop
|
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
|
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
|
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
|
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 |
|
Maximilian Hils
|
6cf0bec912
|
[sans-io] tls: various improvements
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
09b6257de0
|
[sans-io] tls tests++
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
7fbe8cece7
|
[sans-io] tls: test alpn
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
6ee7802bf1
|
[sans-io] http tests++
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
1c80dfe17f
|
[sans-io] tls layer++
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
2736c9c705
|
[sans-io] remove old implementations
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
84287f928c
|
[sans-io] improve testing story
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
e0eb77a794
|
[sans-io] add transparent proxy, improve testing
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
87a4d3efdb
|
[sans-io] http implementation++
|
2020-12-12 21:24:18 +01:00 |
|
Maximilian Hils
|
f76b751661
|
[sans-io] fix NextLayer race condition
|
2020-12-12 21:24:17 +01:00 |
|
Thomas Kriechbaumer
|
bc20b77c48
|
refactor websockets
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
a860fe4a4b
|
[sans-io] minor test improvements
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
8938aec2c0
|
[sans-io] adjust tls tests
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
b5a3343d03
|
[sans-io] add ALPN support to TLS layer, tests++
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
3f7b850268
|
[sans-io] test server tls
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
4cd83ee0af
|
[sans-io] minor test improvements
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
c6262f9e9c
|
[sans-io] remove hook reply
This is not desired as hooks modify the passed object itself
instead of returning a custom reply.
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
1fa2e59734
|
[sans-io] add initial tls tests
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
9ea0259bb7
|
[sans-io] improve ClientHello parsing, add tests
|
2020-12-12 21:24:17 +01:00 |
|
Ujjwal Verma
|
0cb06b428e
|
Moved tests
|
2020-12-12 21:24:17 +01:00 |
|
Maximilian Hils
|
08ecb21a78
|
sans-io adjustments (#4342)
|
2020-12-12 16:09:11 +01:00 |
|
林玮 (Jade Lin)
|
380ac072aa
|
ASGIApp should ignore the HTTP flows loaded from somewhere (#4324)
|
2020-12-12 11:17:38 +01:00 |
|
Maximilian Hils
|
01f57346ee
|
sans-io adjustments
|
2020-12-11 14:09:18 +01:00 |
|
Maximilian Hils
|
5c734b3cd6
|
Merge pull request #4333 from mhils/issue-4280
fix #4280
|
2020-12-10 09:55:29 +01:00 |
|
Maximilian Hils
|
009c124dc8
|
fix #4280
|
2020-12-10 09:24:28 +01:00 |
|
Maximilian Hils
|
c5eae9d752
|
drop support for Python 3.6 and 3.7
We require Python 3.8 for sans-io (#1775),
so we need to drop support for older versions.
|
2020-12-06 00:25:09 +01:00 |
|
Maximilian Hils
|
4b8fcc8650
|
use OpenSSL's keylog callback for SSLKEYLOGFILE, refs #3994
|
2020-11-27 23:49:04 +01:00 |
|
Maximilian Hils
|
b01d574d8b
|
Merge pull request #4309 from jrblixt/InformUnderscoreFormat-Issue_4054
Inform user when underscore-formatted options are used.
|
2020-11-26 18:39:45 +01:00 |
|
Maximilian Hils
|
6d8a315c5d
|
assume keep-alive for HTTP/2
|
2020-11-24 14:48:22 +01:00 |
|
jrblixt
|
ce528a9ff3
|
Inform user when underscore-formatted options are used.
|
2020-11-24 01:37:54 -07:00 |
|
Maximilian Hils
|
bce8bf5f81
|
make individual coverage checker happy
|
2020-11-21 20:19:47 +01:00 |
|
Maximilian Hils
|
9b0c4e2338
|
debug: dump asyncio tasks
|
2020-11-21 20:06:11 +01:00 |
|
Maximilian Hils
|
9b7dfb0fc9
|
add asyncio_utils
|
2020-11-21 20:01:11 +01:00 |
|
Thomas Kriechbaumer
|
38cca379df
|
pyupgrade --py36-plus mitmproxy/**/*.py
|
2020-11-20 19:25:26 +01:00 |
|
Thomas Kriechbaumer
|
44a1848799
|
Merge pull request #4292 from Kriechi/fix-4287
command-history: fail-safe file handling
|
2020-11-18 22:45:22 +01:00 |
|
Thomas Kriechbaumer
|
3c50523025
|
command-history: fail-safe file handling
|
2020-11-17 23:08:57 +01:00 |
|
Maximilian Hils
|
4351262c95
|
Merge pull request #4294 from mhils/sans-io-adjustments
Add a switch for sans-io proxy core
|
2020-11-17 21:58:27 +01:00 |
|
Maximilian Hils
|
1490d665fe
|
lint!
|
2020-11-17 20:20:38 +01:00 |
|
Maximilian Hils
|
77758cff93
|
skip async tests on old python versions
|
2020-11-17 19:15:24 +01:00 |
|
Maximilian Hils
|
739b5b0b74
|
sans-io compat++
|
2020-11-17 17:29:33 +01:00 |
|
Felix Yan
|
0b0a6cfef6
|
Replace asynctest with stdlib mock
This is an implementation of
https://github.com/mitmproxy/mitmproxy/issues/4020
Tested to work fine here with Python 3.8.6.
|
2020-11-14 05:27:35 +08:00 |
|
Thomas Kriechbaumer
|
6289d9bca8
|
refactor and remove dead code
|
2020-11-08 13:07:44 +01:00 |
|
Thomas Kriechbaumer
|
488be14412
|
Merge pull request #4283 from Kriechi/decouple++
websocket: decouple from pathod
|
2020-11-07 17:15:04 +01:00 |
|
Thomas Kriechbaumer
|
f47bf6fe4f
|
websocket: decouple from pathod
|
2020-11-07 17:04:57 +01:00 |
|
Maximilian Hils
|
b45147e91d
|
Merge pull request #4271 from jpstotz/asgi-query
asgiapp.py: fix query parameters
|
2020-11-07 09:48:56 +01:00 |
|
Thomas Kriechbaumer
|
232c71b2e0
|
Merge pull request #4268 from Kriechi/cleanup
detangle custom websockets implementation and replace it with mostly …
|
2020-11-06 22:21:24 +01:00 |
|
Thomas Kriechbaumer
|
c8f9823704
|
detangle custom websockets implementation and replace it with mostly wsproto
|
2020-11-06 22:08:14 +01:00 |
|
Jan Peter Stotz
|
66322c57e1
|
unit test for issue #4270 added
|
2020-11-06 11:32:19 +01:00 |
|
Maximilian Hils
|
02fad34239
|
update verification certs
|
2020-11-03 08:04:15 +01:00 |
|