Commit Graph

9890 Commits

Author SHA1 Message Date
Maximilian Hils 3872d33111 simplify ci build script, add MSIX installer and Microsoft store. 2022-07-25 01:22:57 +02:00
rathann 55a64b7ad9
use default_factory for parser_options field (#5476)
* use default_factory for field parser_options

When running mitmproxy under python 3.11, the following exception
is thrown otherwise:
```
ValueError: mutable default <class 'mitmproxy.contentviews.grpc.ProtoParser.ParserOptions'> for field parser_options is not allowed: use default_factory
```

Fixes #5474.

* add changelog for mitmproxy#5474
2022-07-23 10:15:03 +02:00
Aldo Cortesi 156089229f
[requires.io] dependency update on main branch (#5468)
* [requires.io] dependency update

* [requires.io] dependency update

Co-authored-by: requires.io <support@requires.io>
2022-07-21 15:46:45 +02:00
Maximilian Hils 7c2ffa0c54 ci: switch to macOS 11
macOS 10 is deprecated and receiving brownouts.
2022-07-21 15:42:35 +02:00
Maximilian Hils c7e40cdd80
Merge pull request #5393 from mhils/multiproxy
Multi-Server Mode
2022-07-21 15:32:26 +02:00
Maximilian Hils e2157ecdff fix individual_coverage on Windows 2022-07-21 15:24:11 +02:00
Maximilian Hils 83e543c3e6 add multi proxy mode
This commit makes it possible for mitmproxy to spawn multiple
TCP/UDP proxy servers at the same time, see
https://github.com/mitmproxy/mitmproxy/discussions/5288
2022-07-21 15:24:11 +02:00
Aldo Cortesi 57e65d3d1f
[requires.io] dependency update on main branch (#5461)
* [requires.io] dependency update

* [requires.io] dependency update

* [requires.io] dependency update

* Update setup.py

Co-authored-by: requires.io <support@requires.io>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2022-07-19 15:30:35 +02:00
Aldo Cortesi 821859cd4f
[requires.io] dependency update on main branch (#5448)
* [requires.io] dependency update

* [requires.io] dependency update

* [requires.io] dependency update

* [requires.io] dependency update

* [requires.io] dependency update

* Update setup.py

Co-authored-by: requires.io <support@requires.io>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2022-07-15 13:41:02 +02:00
Maximilian Hils af5be0b928 reopen main for development 2022-06-28 16:16:19 +02:00
Maximilian Hils 564d439df8 bump to 8.1.1 2022-06-28 16:01:52 +02:00
Maximilian Hils c779230ba1
Merge pull request #5438 from mitmproxy/pyinstaller
8.1.1 Release Prep
2022-06-28 07:00:02 -07:00
Maximilian Hils d003038803 fix nits 2022-06-28 15:53:49 +02:00
Maximilian Hils 3a2b02b420 don't error on connection errors when streaming, fix #5383 2022-06-28 15:53:39 +02:00
Maximilian Hils 8ffd2dcaaa windows installer: use 64bit builds 2022-06-28 14:18:40 +02:00
Maximilian Hils 6704407026 bump dependencies 2022-06-28 14:18:40 +02:00
Maximilian Hils 87d3d1cb88 pyinstaller: move hooks into package 2022-06-28 14:18:40 +02:00
Maximilian Hils 661b756520 don't display an error if urwid cannot determine the encoding, fix #5413 2022-06-28 14:18:03 +02:00
Denis 82f18f6afb
fix huge (>65kb) http2 responses corrupted (#5430)
* [#5428] fix huge (>65kb) http2 responses corrupted

* [#5428] add tests for huge (>65kb) http2 responses

* add changelog for #5428

* style fix

Co-authored-by: dhabensky <dhabensky@yandex-team.ru>
2022-06-28 11:52:55 +02:00
Gergely Nagy 0737c68289
accept newer protobuf versions (#5429) 2022-06-27 18:53:15 +02:00
PavelICS 3eab9f0856
Drop pkg_resources dependency used by kaitaistruct version checking (#5401) (#5403)
Co-authored-by: Pavel <pavel@yarpg.ru>
2022-06-06 09:27:30 +00:00
Maximilian Hils 8c151c66a4
add `asyncio_utils.set_current_task_debug_info` (#5392) 2022-06-03 15:20:25 +02:00
JannisBush 6110a2a1bb
Fix wsgi HTTPS example (#5385) 2022-05-30 14:41:10 +00:00
Pedro Augusto de Paula Barbosa 4771e42b44
Fix typo in http-trailers.py (#5384) 2022-05-30 09:53:44 +02:00
Maximilian Hils 02b982f000
windows install: document that installer is faster
refs #5375
2022-05-26 14:12:25 +02:00
Jixun Wu f02d28ecae
Fix a bug where an excess empty chunk has been sent for chunked HEAD request (#5374)
* fix: don't generate empty chunk for head request (#5372)

* docs: update changlog

* chore: assert for optional self.request.
2022-05-26 13:08:34 +02:00
Manuel Meitinger 8fce7c7fa3
Support specifying the local address for outgoing connections. (#5366)
* allow sockname to specify local-addr

* set local_addr via command line

* minor fix for reconfig

* minor rewording

Co-authored-by: Maximilian Hils <github@maximilianhils.com>
2022-05-23 14:54:25 +00:00
Mathis Hesse d5767796e1
Fix PR link for DNS Support in Release History (#5368) 2022-05-23 16:49:49 +02:00
Maximilian Hils 4a2ca75631
remove overambitious assertion found with fuzzing, fix #5343 (#5352) 2022-05-15 20:18:30 +00:00
Maximilian Hils 4069830d48 add hugo build lock file to `.gitignore` 2022-05-15 19:27:13 +02:00
Maximilian Hils 49c7f09a94 adjust to changes in pdoc 12 2022-05-15 19:16:36 +02:00
Maximilian Hils f07a458a71
Update CHANGELOG.md 2022-05-15 18:05:06 +02:00
Maximilian Hils af8e5bbecc reopen main for development 2022-05-15 16:44:07 +02:00
Maximilian Hils 8711351384 bump to 8.1.0 2022-05-15 16:26:52 +02:00
Maximilian Hils cf655a664f Revert "add CI for Python 3.11 (#5348)"
This reverts commit c95236eaaa.
2022-05-14 00:30:45 +02:00
Maximilian Hils c95236eaaa
add CI for Python 3.11 (#5348) 2022-05-13 22:13:12 +00:00
rinsuki 400eb3a285
Fix handling of multiple Cookie headers when proxying HTTP/2 to HTTP/1 (#5342)
* Fix handling of multiple Cookie headers when proxying HTTP/2 to HTTP/1

fix #5337

* Add Tests about converts multiple Cookie headers to HTTP/1 from HTTP/2

* Adjust order

* minor code style nits

* Update CHANGELOG.md

* Update _http1.py

Co-authored-by: Maximilian Hils <github@maximilianhils.com>
2022-05-12 19:04:36 +00:00
Maximilian Hils 362c190562
Merge pull request #5341 from mhils/nits
fix nits
2022-05-12 15:06:08 +02:00
Maximilian Hils 01a772ed4e
Share `SSL.Context` for all server connections (#5339)
* share `SSL.Context` for all server connections

This should cause not functional differences, but increase performance.

* tlsconfig: add IP address verification test
2022-05-11 18:09:41 +02:00
Maximilian Hils e9176deae9 tlsconfig: add IP address verification test 2022-05-11 16:44:02 +02:00
Maximilian Hils 7afabfe3f7 share `SSL.Context` for all server connections
This should cause not functional differences, but increase performance.
2022-05-11 16:16:16 +02:00
Maximilian Hils b3abf5dc9f
don't crash for HTTP/2 informational responses (#5332) 2022-05-08 14:21:00 +02:00
Robert Xiao c296132d61
Properly encode hostname for upstream requests. (#5325)
* Tests for the fix to #5316

* Encode host part of authority using idna in upstream proxy.

Fixes #5316.
2022-05-06 13:02:49 +02:00
Robert Xiao c562865880
Fix CommandError when loading a new contentview (#5324)
* Console tests: don't mess with the mouse

* Fix CommandError when adding a custom view after startup.

Previously, hot-reloading a script with a custom view after at least one flow
was viewed could throw "CommandError: Not viewing a flow" due to show() being
called while the flow view window was not visible.

Additionally, this patch also refreshes the FlowView when a custom view is
removed.

Fixes #5319.

* Test for the fix to #5319.

* Update CHANGELOG to fix #5319
2022-05-06 07:06:17 +02:00
Robert Xiao 0a1e1c7663
Update asyncio_utils.py (#5323)
Remove outdated doc comment in asyncio_utils.create_task.
2022-05-06 07:04:46 +02:00
Remigiusz Żętkowski a201adebe1
Merge pull request #5322 from KORraNpl/remove-mailcap-usage
Remove usage of deprecated mailcap module
2022-05-05 22:46:59 +02:00
Maximilian Hils c91685efeb
Merge pull request #5318 from nneonneo/fix-exit-shutdown
Fix terminal breakage if an error occurs at startup
2022-05-05 10:57:08 +02:00
Robert Xiao 58c13ef432 Print out multiple errors from errorcheck
If multiple errors occur, it is better to log them all, rather than silently
discard all but the first error.
2022-05-03 21:10:51 -07:00
Robert Xiao 5e7f3c86c0 Fix terminal breakage if an error occurs at startup.
sys.exit() causes a CancelledError to be thrown. ErrorCheck._shutdown_if_errored
fires sys.exit after self.running() returns, causing the CancelledError to
appear in Event.wait() and preventing Master.done() from being called. This can
result in terminal breakage when using the CLI, and is especially apparent if
any errors occur during startup (e.g. port is not available, script has a syntax
error, etc.).

The fix is simply to ensure that Master.done always gets called.
2022-05-03 17:45:22 -07:00
Aldo Cortesi 7ff5aa8b30
[requires.io] dependency update (#5315)
Co-authored-by: requires.io <support@requires.io>
2022-05-03 09:56:26 +02:00