Maximilian Hils
fdde9ba3b3
use Python 3.9+ typing
2022-04-26 13:53:23 +02:00
Maximilian Hils
08b8310133
drop support for Python 3.8
2022-04-26 13:53:04 +02:00
Maximilian Hils
b31ad66225
`autoflake --in-place **/*.py`
2022-04-26 13:52:46 +02:00
Maximilian Hils
e83ec8390a
`pyupgrade --py39-plus **/*.py`
2022-04-26 13:51:11 +02:00
Maximilian Hils
2959750124
Merge pull request #5292 from mitmproxy/memoryleak
...
Fix Memory Leaks
2022-04-25 12:52:43 +02:00
Maximilian Hils
e88d5764c3
make `asyncio_utils.create_task` infallible
2022-04-25 11:28:50 +02:00
Maximilian Hils
39e866f2d2
fix asyncio exception handler
...
it needs to work for contexts without exception.
2022-04-25 11:28:50 +02:00
Maximilian Hils
c8d8e303a8
lint
2022-04-25 11:28:50 +02:00
Maximilian Hils
c6276a0d57
debug: improve memory output
2022-04-25 11:28:50 +02:00
Maximilian Hils
527cb10d36
fix somewhat embarassing memory leak
2022-04-25 11:28:50 +02:00
Maximilian Hils
035b3bf37d
drop HTTP streams that are completed, fix #4456
2022-04-25 11:28:50 +02:00
Maximilian Hils
56eea20f63
tutils: add BytesMatching placeholder
2022-04-25 11:28:50 +02:00
Maximilian Hils
0600e8b4bc
debug signals: stay alive by default
2022-04-25 11:28:50 +02:00
Maximilian Hils
b027d1ebc0
Merge pull request #5232 from Meitinger/dns
...
Add DNS support.
2022-04-24 23:17:23 +02:00
Maximilian Hils
330243f2ab
dns: improve web display, coverage++
2022-04-24 23:09:11 +02:00
Maximilian Hils
f6554924ee
fix nits
2022-04-24 22:14:10 +02:00
Lukas Kreft
166f20d5b9
Extend Android onboarding documentation ( #5289 )
...
Co-authored-by: Lukas Kreft <mail@lkreft.de>
2022-04-24 19:13:51 +02:00
Maximilian Hils
6881332a21
`Flow.live`: fix default value for subclasses
2022-04-24 19:06:44 +02:00
Maximilian Hils
4f6da5180e
make sure that dns flows are not live by default
2022-04-24 19:06:43 +02:00
Maximilian Hils
f253a65a46
console: test that flow detail views don't crash
2022-04-24 19:06:43 +02:00
Maximilian Hils
16cb605864
flowfilter: fix asset inconsistency
2022-04-24 19:06:43 +02:00
Maximilian Hils
886a752add
dns: mark classvars as such
2022-04-24 19:06:43 +02:00
Manuel Meitinger
afdd3db07c
[dns] extend filt.peg
2022-04-24 18:20:52 +02:00
Manuel Meitinger
ffca36cf9b
[dns] set timeout to 20 seconds
2022-04-24 16:24:16 +02:00
Manuel Meitinger
ebaacfd850
[dns] additional intercept test
2022-04-24 15:25:07 +02:00
Manuel Meitinger
bda488d871
[dns] flowfilter url test
2022-04-24 15:09:06 +02:00
Manuel Meitinger
4229c7c85c
[dns] offline tests for proxyserver
2022-04-24 14:56:55 +02:00
Manuel Meitinger
dd61b21ce3
[dns] offline dns_resolve tests at 100% coverage
2022-04-24 14:28:11 +02:00
Maximilian Hils
2b26824553
fix #5285
2022-04-24 00:16:42 +02:00
Manuel Meitinger
0553b73d36
[dns] 100% coverage
2022-04-23 23:31:41 +02:00
Manuel Meitinger
99bcfb7f55
[dns] move resolve code into addon
2022-04-23 22:45:51 +02:00
Manuel Meitinger
c821d02e09
[dns] update layer tests and bugfix
2022-04-23 21:57:22 +02:00
Manuel Meitinger
c1761033d9
[dns] put DNS id into connection id
2022-04-23 21:22:40 +02:00
Manuel Meitinger
08df89618e
Merge branch 'dns' of https://github.com/Meitinger/mitmproxy into dns
2022-04-23 20:51:49 +02:00
Manuel Meitinger
f9b55385df
[dns] fix issue with rr records containing compressed names
2022-04-23 20:51:41 +02:00
Maximilian Hils
fab7016b31
beautify flowtable dns entries
...
this isn't perfect (the whole table needs to be refactored properly),
but good enough for now.
2022-04-23 20:05:42 +02:00
Maximilian Hils
196c881971
flowfilter: match `~u` on DNS name
...
`~u` is special in that it is matched naked, i.e. a filter of `foo`
is interpreted as `~u foo`. We want `example.com` to match on DNS
queries for example.com.
2022-04-23 20:03:53 +02:00
Maximilian Hils
51b640b600
skip internet tests, fix nits
2022-04-23 19:03:25 +02:00
Maximilian Hils
af1974b301
`-> Coroutine` -> `async def`
...
this results in nicer tracebacks
2022-04-23 18:49:17 +02:00
Maximilian Hils
8b731ed770
temporary stopgap for `timestamp_tcp_setup`
2022-04-23 18:49:16 +02:00
Maximilian Hils
9c33870ac8
move DNS resolution into own addon, `simple` -> `regular`
2022-04-23 18:49:16 +02:00
Maximilian Hils
b42b3ce1ad
CI: make sure that tests run without internet connection ( #5284 )
2022-04-23 16:44:19 +00:00
Maximilian Hils
0407d9697b
proxy modes: use mitmproxy terminology
...
We consistently use "reverse proxy" and not "forward proxy",
so we should do the same for DNS. Also removed "custom" mode.
If users want such things, the correct approach is to specify a reverse
proxy and set `.response` in the request hook (similar to how it works for HTTP)
2022-04-23 17:05:30 +02:00
Maximilian Hils
2bc43fc10d
self-connect: don't resolve
...
resolving domains here would leak DNS requests if the user aborts,
we don't want that. It's very much a heuristic only anyways.
2022-04-23 16:50:55 +02:00
Maximilian Hils
74f0965a0b
`Connection.protocol` -> `Connection.transport_protocol`
...
This is less ambiguous. Also use a string literal to simplify things.
2022-04-23 16:42:11 +02:00
Maximilian Hils
c17e3a16ec
dumper: improve dns query display
2022-04-23 16:12:28 +02:00
Maximilian Hils
5c9ab2e774
`str` -> `to_str`
...
`str` is a bit of a footgun because it overrides the builtin `str()` if imported directly.
2022-04-23 13:34:04 +02:00
Maximilian Hils
8d6a279818
add very basic DNS API docs
...
the rest still needs to be done, but this should serve as a template
2022-04-23 13:33:18 +02:00
Maximilian Hils
d9338f80a2
exterminate BypassInitStateObject
...
idea and intent were good, I merely want to keep things aligned with other StateObject
subclass implementations to simplify some planned refactorings for StateObject.
2022-04-23 13:11:50 +02:00
Maximilian Hils
7b84848be2
fix save addon memory leak
...
introduced by copying the also-broken `request()` implementation.
7004d694b7
will fix it there next week.
2022-04-23 12:48:34 +02:00