Doug Freed
48b6964552
console: increase eventlog size limit to 10000
2016-12-12 15:41:31 +01:00
Aldo Cortesi
5e2a80fba1
Minor fixes
2016-12-12 12:18:33 +13:00
Maximilian Hils
d854e08653
[web] various fixes
2016-12-12 00:08:29 +01:00
Aldo Cortesi
a4ac5b158f
Merge branch 'master' into optsave
2016-12-12 11:13:32 +13:00
Aldo Cortesi
6dcd620c4a
Merge pull request #1838 from mhils/http2-is-difficult
...
Disable HTTP/2 by default, add explicit on/off switches
2016-12-12 09:17:06 +13:00
Aldo Cortesi
a99bf0814c
console: clean path prompt handling
...
- Don't trigger callback if no path is specified
- Expand userdir centrally
- Catch IO errors from callbacks and turn them into status messages
2016-12-12 09:13:43 +13:00
Maximilian Hils
a7d7ad2880
Merge pull request #1837 from mhils/1809
...
Fix #1809
2016-12-11 21:13:20 +01:00
Aldo Cortesi
f8032bf85a
Replacements and SetHeaders are both defined as text in Options
...
Bytes don't play well with our config serialization or command-line args.
2016-12-12 07:39:59 +13:00
Aldo Cortesi
ca33bea296
Extend type checker validate Sequence specs
2016-12-12 07:39:59 +13:00
Aldo Cortesi
c5717b17df
console: add saving of config file
2016-12-12 07:39:59 +13:00
Maximilian Hils
00ae4d3f6e
fix version sourcing in setup.py
2016-12-11 17:50:46 +01:00
Maximilian Hils
b92980efec
[web] show proxy address, add websocket toggle
2016-12-11 15:26:49 +01:00
Maximilian Hils
b62b92eabe
Merge pull request #1840 from mhils/1829
...
fix #1829
2016-12-11 14:50:20 +01:00
Maximilian Hils
bdba885922
fix #1829
2016-12-11 13:22:26 +01:00
Maximilian Hils
265ab7bf26
fix #1830
2016-12-11 13:11:02 +01:00
Maximilian Hils
b24d9654a9
disable http2 by default, add explicit on/off switches
...
As long as major HTTP/2 implementers fail to implement the spec correctly,
we need to disable HTTP/2 by default. We expect this to be fixed with
the next release and re-enabled by default.
https://github.com/mitmproxy/mitmproxy/issues/1745
https://github.com/mitmproxy/mitmproxy/issues/1824
2016-12-11 00:29:35 +01:00
Maximilian Hils
782c66eac2
fix #1809
2016-12-10 21:36:31 +01:00
Aldo Cortesi
8112bce424
Merge pull request #1831 from mhils/contentviews
...
Split contentviews.py into mitmproxy.contentviews
2016-12-11 07:33:27 +13:00
Maximilian Hils
b4a1bb44d9
minor fixes
2016-12-10 17:18:21 +01:00
Maximilian Hils
8df61c927e
Merge pull request #1834 from Kriechi/remove_ssl_match_hostname
...
remove backport.ssl_match_hostname
2016-12-10 17:03:18 +01:00
Thomas Kriechbaumer
7bae941ecc
remove backport.ssl_match_hostname
...
This is already included in Python 3.5+
2016-12-10 14:29:51 +01:00
Maximilian Hils
3e37cbd061
minor fixes
2016-12-10 12:06:33 +01:00
Maximilian Hils
123ef043dc
add new xml/html pretty-printer 🎉
2016-12-10 11:40:07 +01:00
Maximilian Hils
293b79af91
remove lxml-dependent code
2016-12-10 10:19:05 +01:00
Maximilian Hils
a7ba2f7b46
update tests, increase coverage, add type info
2016-12-09 21:26:02 +01:00
Maximilian Hils
f53f079f91
split contentviews.py into mitmproxy.contentviews
2016-12-09 19:02:55 +01:00
Maximilian Hils
f0e9e4bab9
fix #1803
2016-12-09 17:18:26 +01:00
Aldo Cortesi
e943147fc3
options: add a merge method to assimilate options
...
Fixes #953
2016-12-08 16:12:40 +13:00
Aldo Cortesi
67e9de5f7f
console: use an addon to capture logs
...
Fix #1780
2016-12-08 10:47:45 +13:00
Aldo Cortesi
b2695dbc6a
Minor tweaks
2016-12-08 10:21:06 +13:00
Aldo Cortesi
a617e3b5f7
Amalgamate all the Options objects
2016-12-08 10:21:06 +13:00
Aldo Cortesi
d742d4fb8c
Replace configargparse with argparse, enable new options loading
...
This commit ditches configargparse and enables the new config file format. The
default location is ~/.mitmproxy/config.yaml. Unifying all of the various
Options objects will follow in the next patch.
2016-12-08 10:21:06 +13:00
Aldo Cortesi
6aacd27ab2
Add YAML serialization of options
...
This uses ruamel.yaml. The library seems well-supported, and can do in-place
modification of config files that retains user comments and file structure.
2016-12-08 10:21:06 +13:00
Aldo Cortesi
150372e297
options: defaults are a class attribute
2016-12-08 10:21:06 +13:00
Aldo Cortesi
2cb1f70381
Options - avoid mutation, API cleanup, has_changed
...
- Always return a deepcopy of options to avoid accidental mutation of options
state.
- Remove .get(opt, default). This is an inappropriate API for Options - trying
to retrieve an option that doesn't exist should always be an error.
- Add the has_changed method that checks if an option differs from the default,
use it in mitmproxy console.
2016-12-08 10:21:06 +13:00
Aldo Cortesi
00c897a185
options: save defaults, add .reset() to restore defaults
...
Use .reset() in console app to clear options.
2016-12-08 10:21:06 +13:00
Aldo Cortesi
d74cac265a
Add YAML serialization of options
...
This uses ruamel.yaml. The library seems well-supported, and can do in-place
modification of config files that retains user comments and file structure.
2016-12-08 10:21:06 +13:00
Aldo Cortesi
c94cd512d1
options: defaults are a class attribute
2016-12-08 10:21:06 +13:00
Aldo Cortesi
3594faf5c4
Correct refresh_server_playback option default
2016-12-08 10:21:06 +13:00
Aldo Cortesi
c062e302e9
Add OptManager.subscribe, use it to clean up palettes in console
...
.subscribe lets you subscribe a function to a specified set of options.
2016-12-08 10:21:06 +13:00
Aldo Cortesi
0c091bd92b
Options - avoid mutation, API cleanup, has_changed
...
- Always return a deepcopy of options to avoid accidental mutation of options
state.
- Remove .get(opt, default). This is an inappropriate API for Options - trying
to retrieve an option that doesn't exist should always be an error.
- Add the has_changed method that checks if an option differs from the default,
use it in mitmproxy console.
2016-12-08 10:21:06 +13:00
Aldo Cortesi
b231836c70
Get rid of tfile testing option
...
It's weird, it's ugly, it's getting in the way of my options refactoring, and
it must therefore die.
2016-12-08 10:21:05 +13:00
Aldo Cortesi
297493801d
Clean up dump tests
...
- Remove tests that redundantly test addon funtionality that we've already
tested more comprehensively elsewhere.
- Extend to 100% coverage for tools/dump.py
2016-12-08 10:21:05 +13:00
Aldo Cortesi
b4d33aaebf
options: save defaults, add .reset() to restore defaults
...
Use .reset() in console app to clear options.
2016-12-08 10:21:05 +13:00
Thomas Kriechbaumer
47196e8676
tls_parser: allow optional extensions
...
fixes #1816
2016-12-06 19:51:57 +01:00
Maximilian Hils
e44493bda5
Merge pull request #1810 from Kriechi/construct
...
upgrade to construct 2.8 and new API
2016-12-04 18:43:20 +01:00
Thomas Kriechbaumer
33689c6b2d
upgrade to construct 2.8 and new API
2016-12-04 16:15:28 +01:00
Thomas Kriechbaumer
1a36efbb6a
simplify ALPN and OpenSSL on macOS
2016-12-04 11:04:06 +01:00
Thomas Kriechbaumer
741c2b7b66
fix whitespace
2016-12-03 16:55:56 +01:00
Thomas Kriechbaumer
e9fa786fa9
fix indentation
2016-12-03 16:53:13 +01:00
Thomas Kriechbaumer
1fcf79fff0
fix ALPN usage
2016-12-02 11:58:20 +01:00
Thomas Kriechbaumer
d2216801dd
websocket: make flowfilter work
2016-11-29 23:01:55 +01:00
Thomas Kriechbaumer
ea6de424a3
websocket: carry over per-message compression bit
2016-11-29 22:32:55 +01:00
Thomas Kriechbaumer
073a286098
websocket: reduce connection timeout
2016-11-29 22:17:33 +01:00
Thomas Kriechbaumer
bd8ae910d2
websocket: fix message type on chunking
2016-11-29 22:13:59 +01:00
Thomas Kriechbaumer
6e15e766c5
websocket: fix close handshake and re-chunking
2016-11-29 22:01:41 +01:00
Thomas Kriechbaumer
5ee192b758
websocket: fix empty frame with fin=1
2016-11-29 21:00:42 +01:00
Maximilian Hils
34bf3a2496
fix #1783 ( #1794 )
2016-11-28 13:29:06 +01:00
Maximilian Hils
e64d2ce829
Merge pull request #1792 from Kriechi/mitmdump-filter-help
...
improve mitmdump filter help
2016-11-28 02:13:39 +01:00
Maximilian Hils
3154dc87fd
fix pyinstaller
...
amongst other things, fix #1746
2016-11-28 00:51:52 +01:00
Thomas Kriechbaumer
b5daafb518
improve mitmdump filter help
2016-11-25 21:59:13 +01:00
Maximilian Hils
568f40c810
Fix transparent mode initialisation, refactor mitmproxy.platform ( #1787 )
2016-11-25 17:32:23 +01:00
Maximilian Hils
0386740404
mitmweb: include console logging
2016-11-25 17:20:14 +01:00
Maximilian Hils
1d3cb9eeb8
mitmweb: add --no-browser
2016-11-25 17:20:14 +01:00
Maximilian Hils
222106916e
Merge branch 'mitmweb-eventlog'
2016-11-23 22:47:50 +01:00
Maximilian Hils
d15ddfad14
fix contentview attributes
2016-11-23 22:47:36 +01:00
Maximilian Hils
45332006a3
mitmweb: 100% app test coverage, numerous fixes
2016-11-23 22:35:07 +01:00
Thomas Kriechbaumer
9bc5adfb03
add more websocket indicators to mitmproxy and mitmdump
2016-11-23 10:18:45 +01:00
Thomas Kriechbaumer
4b04566a34
add metadata info to flow detail view
2016-11-23 10:18:45 +01:00
Thomas Kriechbaumer
ea97f62975
websocket: show messages in the eventlog
2016-11-23 10:18:45 +01:00
Thomas Kriechbaumer
5dfc199086
websocket: add tests
2016-11-23 10:18:45 +01:00
Thomas Kriechbaumer
4beb693c9c
websocket: change cmdline option
2016-11-23 10:18:45 +01:00
Thomas Kriechbaumer
3d8f3d4c23
add WebSocket flows and messages
2016-11-23 10:18:45 +01:00
Thomas Kriechbaumer
ffb3988dc9
rename WebSocket{s,} protocol
2016-11-23 10:18:45 +01:00
Maximilian Hils
dc75605e46
minor fixes
2016-11-23 01:27:52 +01:00
Maximilian Hils
72dcf70db2
mitmweb: fix event display
2016-11-23 01:27:51 +01:00
Maximilian Hils
fea6041cde
mitmweb: cleanup, reimplement eventlog
2016-11-23 01:27:50 +01:00
Maximilian Hils
a6c608e085
make the new mypy release happy
2016-11-23 01:27:23 +01:00
Maximilian Hils
40f0193dda
remove mitmweb auth
...
9b08279c7c
removed the actual functionality.
we should not have a command line switch that does nothing. :)
2016-11-22 18:27:16 +01:00
Maximilian Hils
21a03d56b5
don't set an empty ALPN, refs #1772
2016-11-22 17:02:37 +01:00
Maximilian Hils
f644665cd9
update pydivert, fix #1749
2016-11-21 14:14:52 +01:00
Yoginski
ebff5f2466
Descriptive error message for SSL context initialization failure ( #1767 )
2016-11-21 09:40:09 +01:00
Maximilian Hils
f74e561524
rewrite absolute-form HTTP requests to relative form, fix #1759 ( #1765 )
2016-11-20 17:21:21 +01:00
Edgar Boda-Majer
078f36d86a
handle SIGINT with a quit prompt ( #1760 )
2016-11-20 16:40:04 +01:00
Doug Freed
0ff1967226
proxy/protocol/base: Allow spoofing fixed source
...
Allow combining --spoof-source-address and --upstream-bind-address to
spoof a fixed source address. Also update the help text for
--spoof-source-address to indicate this new possibility.
2016-11-18 14:46:32 +00:00
Maximilian Hils
5ce370e2a9
lint!
2016-11-18 12:59:59 +01:00
Maximilian Hils
2ee8bc2f1a
fix type checks
2016-11-16 17:19:38 +01:00
Maximilian Hils
de6bf175e2
mitmweb: start browser on startup
2016-11-16 15:09:54 +01:00
Maximilian Hils
677789a617
minor fixes
2016-11-16 15:09:53 +01:00
Maximilian Hils
47ec1c9570
Merge pull request #1742 from dwfreed/patch-2
...
Make the upstream bind address a separate option
2016-11-16 13:37:12 +01:00
Thomas Kriechbaumer
3d26bd4aa1
Merge pull request #1748 from Kriechi/better-onboarding
...
add macOS/OSX installation instructions to onboarding page
2016-11-16 13:04:07 +01:00
Thomas Kriechbaumer
d7a22d92ec
add macOS/OSX installation instructions to onboarding page
2016-11-16 11:05:52 +01:00
Aldo Cortesi
8065b44eed
addons.view: clarify modification events
...
This adds a set of store modification events, and uses them for flow settings.
This addresses a bug where settings could persist even after flows were deleted.
2016-11-15 09:53:17 +13:00
Doug Freed
4cfda51c37
proxy/protocol/base: use upstream_bind_address
...
Use the upstream_bind_address option, instead of listen_host.
2016-11-14 12:12:48 +00:00
Doug Freed
f89671a33b
tools/cmdline: add upstream bind address option
...
Allow specifying the upstream bind address on the command line.
2016-11-14 12:12:48 +00:00
Doug Freed
078bd532c3
options: add upstream_bind_address
...
Add upstream_bind_address to the options object
2016-11-14 12:12:48 +00:00
Aldo Cortesi
2d0a65a3f4
Merge pull request #1738 from Kriechi/fix-1737
...
restrict ALPN offers if host changes
2016-11-14 08:50:29 +13:00
Thomas Kriechbaumer
6fb706ec15
restrict ALPN offers if host changes
2016-11-13 12:11:56 +01:00
Aldo Cortesi
9b08279c7c
addons.proxyauth: out with the old, in with the new
...
- Strip out old auth mechanisms, and enable addon
- Disable web app auth for now - this should just use the Tornado auth stuff
2016-11-13 19:59:59 +13:00
Aldo Cortesi
dc88b7d110
addons.proxyauth: complete and test
2016-11-13 18:14:23 +13:00