Maximilian Hils
e2f42ddb30
exit for all tools on startup error, fix #4544 ( #5187 )
2022-03-16 13:23:32 +00:00
Maximilian Hils
148429c0b3
lowercase user-added HTTP/2 headers, fix #4746 ( #5186 )
2022-03-16 10:59:30 +01:00
Maximilian Hils
6f0587734e
Refactor how we process --set
options ( #5067 )
...
* refactor how we process `--set` options
* minor improvements based on @marwinxxii's review
* fix nits
* update changelog
2022-03-16 07:33:30 +00:00
Alexander Prinzhorn
8e1adbc5df
Add WebSocketMessage.injected flag ( #5105 )
...
* Add WebSocketMessage.injected flag
* add flow format migration
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2022-03-16 07:10:23 +00:00
Eldad Marciano
cba67aa94c
an ntlm upstream addon for http \ https ( #5100 )
...
* an ntlm upstream addon for http \ https
Ntlm upstream proxy for http https all http methods
* fix filename
* lint!
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2022-03-15 20:44:09 +00:00
Vinayak Khandelwal
3d5f6da048
ISSUE_5068 ( #5161 )
...
* changes for custom port number
* indent correction
* test coverage
* coverage correction
* simplify LDAP auth
* make mypy hapy
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2022-03-15 20:39:38 +00:00
EndUser509
a0cf273484
Merge pull request #5099 from EndUser509/save_streamed_data2
...
Save streamed data
2022-03-15 21:34:49 +01:00
Maximilian Hils
6ec97d0b8e
fix compatibility with Python 3.8
2022-03-15 21:02:35 +01:00
Maximilian Hils
e22f8db526
add asyncio exception handler test
2022-03-15 19:59:51 +01:00
Maximilian Hils
5a4dbffbae
update dependencies
2022-03-15 19:50:06 +01:00
Maximilian Hils
290ec68aca
remove pytest.mark.asyncio
2022-03-15 19:50:06 +01:00
Maximilian Hils
a7d473c1c1
fix compatibility with Python <3.10
2022-03-15 19:50:06 +01:00
Maximilian Hils
1af095bcf8
docs: fix options generation, add anchors
2022-03-15 19:02:43 +01:00
Maximilian Hils
5fc20e3e8c
tests++
2022-03-15 18:43:56 +01:00
Maximilian Hils
bbc65e5f37
clean up initialization mess
...
We now manage the eventloop ourselves no matter which tool.
2022-03-15 11:22:03 +01:00
Maximilian Hils
46ccf6049c
add asyncio_utils.run()
2022-03-15 10:28:53 +01:00
Maximilian Hils
c3dade0950
inline _change_reverse_host
to make sure it is not used elsewhere
2022-03-14 14:11:01 +01:00
Maximilian Hils
33742122a5
set an exception handler for asyncio, fix #5159 , refs #5016
2022-03-14 14:06:05 +01:00
Maximilian Hils
8bb7ad468f
remove workaround for a Python <=3.7 bug
2022-03-13 19:20:26 +01:00
Maximilian Hils
2387719ace
urwid: support sgr mouse reporting
...
this commit vendors e2423b5069
so that we don't have to wait for a new release.
2022-03-13 19:16:01 +01:00
Maximilian Hils
6c4b3954aa
urwid windows: use utf8
2022-03-13 19:15:55 +01:00
Maximilian Hils
3387dac679
remove leftover import
2022-03-08 17:44:20 +01:00
Maximilian Hils
e077e60590
tls: gracefully catch connection errors
2022-03-07 18:59:00 +01:00
Maximilian Hils
b491528981
exclude time-sensitive test from CI
2022-03-04 11:38:28 +01:00
Maximilian Hils
65773cc9c0
speculative fix for #5158
2022-02-27 07:58:20 +01:00
Maximilian Hils
5cdd2bc6ec
docs: TCPFlow.messages
2022-02-27 07:58:00 +01:00
Maximilian Hils
2d2a9f3c52
adjust to template changes in pdoc 10 ( #5132 )
2022-02-14 15:07:20 +00:00
Sandro
f85c64401b
Update dead link ( #5128 )
2022-02-11 17:22:13 +01:00
Maximilian Hils
ffe58ae34c
fix map local examples
2022-02-09 09:03:59 +01:00
Maximilian Hils
4d1d54d4a5
fix hugo version
2022-02-09 08:52:52 +01:00
Maximilian Hils
41979a1cb4
update hugo
2022-02-09 08:49:18 +01:00
Maximilian Hils
2480eae5b0
Revert "Fix websocket view jumps to top bug ( #4845 )"
...
This reverts commit 278611bf77
,
which introduced a bug for the regular HTTP views,
which would initially scroll to the bottom.
fix #5089
2022-02-05 18:24:56 +01:00
Maximilian Hils
4468046a26
Merge pull request #5106 from nneonneo/async_addons
...
Support async hooks. Fixes #4207 .
2022-02-04 21:20:33 +01:00
Maximilian Hils
372a632161
reintroduce Flow.live
...
We previously relied on the state of `Flow.reply` to check if a flow can be killed,
but this doesn't work anymore with `Flow.reply` being removed. Instead, we now
reintroduce the `Flow.live` attribute, which signals if we are on a live connection.
Killing still is not ideal (see comment in `Flow.killable`), but this paves the way.
2022-02-04 17:30:58 +01:00
Maximilian Hils
4f5930ec5d
simplify concurrency tests
2022-02-04 17:30:20 +01:00
Maximilian Hils
068204fc59
perf: fast path for sync hooks
2022-02-04 17:30:20 +01:00
Robert Xiao
6dc6269b8e
Remove no-longer-used tctx.invoke function
2022-02-04 17:30:20 +01:00
Robert Xiao
794c18bec0
Entirely remove the reply system.
...
The major, breaking change is that it is no longer possible to "take" a reply in
order to block the effect of a later addon hook.
This is patch 4/4 of the reply-ectomy.
2022-02-04 17:30:20 +01:00
Robert Xiao
ede269fce4
Flow.intercept: use an Event instead of the reply system
...
This is patch 3/4 of the reply-ectomy.
2022-02-04 17:30:20 +01:00
Robert Xiao
fd43ca19c4
Flow.kill: don't depend on reply status.
...
In principle, a flow is killable as long as the connection handler is still
checking the error status of the flow.
This is patch 2/4 of the reply-ectomy.
2022-02-04 17:30:20 +01:00
Robert Xiao
4448550746
Rewrite @concurrent to use async instead of the reply mechanism.
...
This should improve behaviour, since calls to @concurrent will now be serialized
relative to other hooks on the same flow (but will still run in parallel with
hooks on different flows). Unlike a plain async hook, @concurrent allows blocking
sync APIs to run concurrently (e.g. requests).
This is patch 1/4 of the reply-ectomy.
2022-02-04 17:30:20 +01:00
Robert Xiao
caf49300c2
Use async for tctx.cycle/tctx.invoke.
2022-02-04 17:30:20 +01:00
Robert Xiao
e186ccb3ba
fix test.helper_tools.dumperview script.
...
Previously, it was throwing the following error:
File mitmproxy/addons/dumper.py, line 133, in _echo_request_line
elif flow.client_conn.peername:
AttributeError: 'bool' object has no attribute 'peername'
2022-02-04 17:30:20 +01:00
Robert Xiao
ee4999e8e4
Rename new async helper functions.
...
async_trigger -> trigger_event
invoke_addon -> invoke_addon_sync (API breakage)
async_invoke_addon -> invoke_addon
2022-02-04 17:30:20 +01:00
Robert Xiao
687ab4b589
Tests for async hook support
2022-02-04 17:30:20 +01:00
Robert Xiao
cee4b72459
Support async hooks. Fixes #4207 .
2022-02-04 17:30:20 +01:00
Maximilian Hils
8c86fd06db
add changelog linkifier util
2022-02-04 16:00:44 +01:00
Alexander Prinzhorn
437e55c2c2
await server_connected hook before doing something with the connection, fixes #5108 ( #5110 )
...
* await server_connected hook before doing something with the connection
* refine changelog wording
Co-authored-by: Maximilian Hils <github@maximilianhils.com>
2022-02-04 13:49:57 +00:00
Remigiusz Żętkowski
59033371e8
iOS 15 certificate installation instructions update ( #5107 )
...
* Update certificate intructions for iOS 15
* Formatting fixes
2022-02-03 12:53:50 +01:00
nt8en
83b43b93a7
Fix a typo in addons-overview.md ( #5088 )
2022-01-25 09:39:54 +01:00