Commit Graph

551 Commits

Author SHA1 Message Date
Aldo Cortesi
fb6e9c44c8 ProxyConfig: ciphers_client and ciphers_server -> Options 2016-07-19 16:25:09 +12:00
Aldo Cortesi
26fa88a338 ProxyConfig: Refactor to move verification mode checks into configure 2016-07-19 16:25:09 +12:00
Aldo Cortesi
77bf092bcd ProxyConfig: tcp_hosts and ignore_hosts to Options 2016-07-19 16:25:09 +12:00
Aldo Cortesi
98bf544664 Regularize naming of upstream_trusted_ca* options 2016-07-19 16:25:09 +12:00
Aldo Cortesi
0a3839375d ProxyConfig: various SSL options to Options 2016-07-19 16:25:09 +12:00
Aldo Cortesi
f81c53f9bb Fix ca directory creation 2016-07-19 16:25:09 +12:00
Aldo Cortesi
78e8159007 config.parse_server_spec shouldn't pass byts to tcp.Address 2016-07-19 16:25:09 +12:00
Aldo Cortesi
f9622074cc ProxyConfig: mode, upstream_server and upstream_auth to Options 2016-07-19 16:25:09 +12:00
Aldo Cortesi
bd733e1232 Handle command-line argument errors properly
At some point we stopped handling exceptions from get_common_options properly.
2016-07-19 16:25:09 +12:00
Aldo Cortesi
d2268ddb1e ProxyConfig: --body-size-limit to Options 2016-07-19 16:25:09 +12:00
Aldo Cortesi
f24f8ce971 ProxyConfig: --cert to options
Also incidentally improve handling of invalid certificate formats.
2016-07-19 16:25:09 +12:00
Aldo Cortesi
856e1c2ba9 Move clientcers & cadir to Options
Also adds a .configure mechanism to ProxyConfig, and hooks it up to the change
event.
2016-07-19 16:25:09 +12:00
Aldo Cortesi
b1b1a1b9cf ProxyConfig: cadir to options 2016-07-19 16:25:09 +12:00
Aldo Cortesi
6908dc4d90 ProxyConfig refactor
Step two of frog boiling: move listening address and port into options. This is
the hard bit, because it touches the test suite so deeply.
2016-07-19 16:25:09 +12:00
Aldo Cortesi
9bc1514aef Unify proxy config and options
This is step 1 in a gradual "boiling frog" strategy. Decorate ProxyConfig
with an Options object.
2016-07-19 16:25:09 +12:00
Maximilian Hils
859bb8c99f Merge remote-tracking branch 'jason/ui' 2016-07-18 20:59:17 -07:00
Aldo Cortesi
e9865800a8 Console options cleanup
Use setters, use togglers, move more things out of master
2016-07-18 10:31:34 +12:00
Aldo Cortesi
ff80c7b618 file -> open throughout console 2016-07-18 10:08:05 +12:00
Aldo Cortesi
f9e4249499 Add a toggller helper to Options, start using it in mitmproxy console 2016-07-18 10:03:10 +12:00
Thomas Kriechbaumer
d9021f8505 http2: coverage++ 2016-07-17 18:07:02 +02:00
Aldo Cortesi
216e38d437 setheaders -> addon 2016-07-17 18:41:14 +12:00
Aldo Cortesi
821b97c19c Remove old ReplaceHooks code 2016-07-17 16:25:42 +12:00
Aldo Cortesi
a26cc75aab Merge pull request #1370 from cortesi/filestreamer
Some work on stream-to-file
2016-07-17 16:20:41 +12:00
Aldo Cortesi
9bf1d300d8 Some work on stream-to-file
- stream -> filestreamer throughout
- move active_flows set into FileStreamer addon
2016-07-17 16:07:29 +12:00
Aldo Cortesi
08b3af98c2 Merge branch 'master' into dumper 2016-07-17 12:53:14 +12:00
Aldo Cortesi
b5bbeb0ff3 dumper: correctly detect request replay
Fixes #1361
2016-07-17 11:11:22 +12:00
Aldo Cortesi
ca7ca8ec24 The "handled" flag on responses should not persist across calls 2016-07-17 11:06:29 +12:00
Aldo Cortesi
11bd911e45 Some mild refactoring of dumper.py 2016-07-17 11:00:36 +12:00
Aldo Cortesi
b0b3b19ad6 Extract console dump functionality into an addon
This removes all the code that deals with printing flows to screen from dump.py
into a self-contained addon.

- This fixes a bug - by moving dumping into an
addon, we now dump flows AFTER addon transformation, so we can see the changes
made.
- We get dumping "for free" in other places by simply adding the addon. It's
now easy to add dumping to console to mitmweb for debugging and development.
The same goes for external projects that derive from master.
- We also get major benefits in clarity for a frankly hairy part of our
project. Mitmdump is much clearer, and all the hairyness is now isolated for
further refactoring.
2016-07-17 10:17:02 +12:00
Maximilian Hils
f0c15aa09c @mhils can't merge 2016-07-16 00:36:26 -07:00
Maximilian Hils
afc3f6d854 Merge remote-tracking branch 'duffer/tcpflow-filter' 2016-07-16 00:19:01 -07:00
Maximilian Hils
b27d59095d Merge pull request #1306 from mitmproxy/message-body-encoding
Improve Message Body Encoding
2016-07-16 00:13:58 -07:00
Aldo Cortesi
1a1f7e6fd9 replacehooks -> addon
Also fixes a bug in header replacements in netlib that resulted in a mutable
multidict.
2016-07-16 18:37:30 +12:00
Maximilian Hils
3602fd7a36 Merge remote-tracking branch 'origin/master' into message-body-encoding 2016-07-15 23:17:57 -07:00
Maximilian Hils
a3c7c84d49 improve message content semantics 2016-07-15 22:50:33 -07:00
Shadab Zafar
fea4435dac Allow DummyFlow to match ~e, ~src and ~dst 2016-07-16 10:15:38 +05:30
Shadab Zafar
5082dc6cbd Sort filt items alphabetically 2016-07-16 10:15:38 +05:30
Shadab Zafar
6a2668d865 Add ~http and ~tcp filters 2016-07-16 10:15:38 +05:30
Shadab Zafar
262a420553 Use ~bq / ~bs for messages sent from client / server 2016-07-16 10:15:38 +05:30
Shadab Zafar
5f7d61f864 Replace http decorator with one that handles different flowtypes 2016-07-16 10:15:38 +05:30
Shadab Zafar
a7bb0f5d02 Add TCPFlow.match 2016-07-16 10:15:38 +05:30
Shadab Zafar
ffcdd02e96 Add decorator for HTTPFlow filters 2016-07-16 10:15:38 +05:30
Shadab Zafar
124b87b851 Add test for body (~b) 2016-07-16 10:15:38 +05:30
Aldo Cortesi
17305643bc console: don't let messages overwrite prompts
This renders mitmproxy unresponsive and is bad UX as well.
2016-07-16 11:48:16 +12:00
Aldo Cortesi
50f1495f29 Make mitmdump return an error exit status if errors occurred during run 2016-07-16 10:59:47 +12:00
Aldo Cortesi
33d03d916a Flash a status bar message if an error log event occurs 2016-07-16 10:39:49 +12:00
Aldo Cortesi
49b65d2ea4 Add a helper to translate a log level to a tier
This is in utils for now - we'll find a better home down the track.
2016-07-16 10:33:50 +12:00
Aldo Cortesi
91e9016ce5 Trigger "start" when scripts are reloaded. 2016-07-16 10:21:00 +12:00
Aldo Cortesi
5f23d4f5ca add_event -> add_log throughout project
"Event" is terribly over-loaded in the project, and "log" is straight-forward
and self-explanatory.
2016-07-16 10:19:06 +12:00
Aldo Cortesi
5a60f32c55 Fix log level handling
We have 4: error, warn, info and debug.
2016-07-16 09:23:52 +12:00