Commit Graph

564 Commits

Author SHA1 Message Date
Aldo Cortesi 6c89749f0a Add timestamps to flows.
For now, these are only displayed on the connection view screen, with second
granularity.
2011-02-03 13:30:47 +13:00
Aldo Cortesi 673ff01acc Fix tracking of edited state. 2011-02-03 12:28:40 +13:00
Aldo Cortesi f6c8654f08 "Q" quits without confirmation prompt. 2011-02-03 12:20:05 +13:00
Aldo Cortesi d8cb826361 Test suite rejiggering and cleanup. 2011-02-03 12:16:03 +13:00
Aldo Cortesi db99da6af5 Improve script handling.
- Display output in external viewer when script exits with error.

- Add a "changed" indicator to show if a request can be reverted.
2011-02-02 11:44:28 +13:00
Aldo Cortesi 8d37ff81e6 README -> README.mkd 2011-02-02 10:25:40 +13:00
Aldo Cortesi df9d8832fb Use last path specified as default prompt. 2011-02-02 10:19:54 +13:00
Aldo Cortesi 405e60215c View script debug output (stderr) in pager. 2011-02-02 10:09:16 +13:00
Aldo Cortesi b886f808be Add an external script API.
External scripts can read a flow, modify it, and then return it to mitmproxy
using a simple API.

The "|" keyboard shortcut within mitmproxy prompts the user for a script.
2011-01-31 13:26:56 +13:00
Aldo Cortesi edb8228dd2 Factor out flow unit tests into speparate file. 2011-01-31 11:48:53 +13:00
Aldo Cortesi 152b97fa0b Restructure to make subclassing Flow unnecessary. 2011-01-31 11:44:52 +13:00
Aldo Cortesi 1619d164ff Re-jigger flow view shortcuts so we don't over-ride global shortcuts. 2011-01-31 10:57:33 +13:00
Aldo Cortesi 74aa622fdd Better help page statusbar text. 2011-01-30 15:31:44 +13:00
Aldo Cortesi cf165bc32e Next and previous flow shortcuts from within flow view. 2011-01-30 15:26:41 +13:00
Aldo Cortesi 2a39387d27 UI tweaks
- Make flow view state persistent (request/response, body view mode).
- Don't exit flow view mode when viewing help.
2011-01-30 14:52:51 +13:00
Aldo Cortesi 091db9cdf2 Prompt user on quit. 2011-01-28 12:55:02 +13:00
Aldo Cortesi 0742bc4fd0 Nicer statusbar messages, with timed expiry. 2011-01-28 12:18:01 +13:00
Aldo Cortesi dfefe3cdda Make pretty-printing more robust.
Also, since BeautifulSoup is so damn slow, print a statusbar message saying
that we're calculating a pretty version of the response. Maybe I should add
hangman or something, becuase on a 200k document this can take ages.
2011-01-28 12:08:25 +13:00
Aldo Cortesi 93ef691bad Basix XML/HTML pretty-printing in flow viewer. 2011-01-27 17:26:01 +13:00
Aldo Cortesi 96e714a74c Handle nonexistent load files gracefully.
Also improve IOError statusbar messages.
2011-01-27 15:20:07 +13:00
Aldo Cortesi edab82f7d8 Add command to write request or response body to file. 2011-01-27 15:16:03 +13:00
Aldo Cortesi 345ac0f2a0 Refine flow saving shortcuts.
"S" to save all flows.

"s" to save just the current flow.
2011-01-27 15:03:53 +13:00
Aldo Cortesi eb93cc22ce Fine-tune threading and fix an exception. 2011-01-27 14:19:48 +13:00
Aldo Cortesi efe11a0782 Kill deadlock that sometimes occurred on shutdown. 2011-01-27 13:32:24 +13:00
Aldo Cortesi 077272ec97 Switch to BSON for data serialization. 2011-01-27 10:52:42 +13:00
Aldo Cortesi 460107589c Add tab completion for save and load path specs. 2011-01-27 10:29:37 +13:00
Aldo Cortesi bd6c0499fb Fix UI sync bugs introduced by flow serialization. 2011-01-26 22:17:42 +13:00
Aldo Cortesi 635f7a971d Add saving and loading of complete flows for later replay and analysis. 2011-01-26 16:50:17 +13:00
Aldo Cortesi 29d8007678 Add serialization hooks to flows and flow component objects. 2011-01-26 14:52:03 +13:00
Aldo Cortesi 7983dbb26a Abstract flow management out of the interactive code. 2011-01-25 15:02:48 +13:00
Aldo Cortesi b8d8030abd Documentation updates. 2011-01-25 10:59:50 +13:00
Aldo Cortesi 2f5de24098 Add FAQ entry for installing globally trusted certs for pentesting Windows apps. 2011-01-17 16:14:20 +13:00
Aldo Cortesi 324c175d02 Fix indentation in previous patch. 2010-09-06 11:21:51 +12:00
Henrik Nordström 2e7e9f9759 Wrap read request, concatenating partial reads until whole request have been read 2010-09-06 07:18:11 +08:00
Aldo Cortesi e98a035540 Release mitmproxy 0.2 2010-03-01 17:25:27 +13:00
Aldo Cortesi f457342aab Add mitmproxy command line flags for a number of filter expressions.
For now, these are supported: intercept, limit, sticky cookies, beep
2010-03-01 15:42:38 +13:00
Aldo Cortesi fbe6e0a820 Housekeeping: todo updates, move put handler_ methods together in console.py. 2010-03-01 15:08:39 +13:00
Aldo Cortesi ba92d22e1d Put DumpMaster in its own file.
It's going to become a more important part of the mitmproxy suite now.
2010-03-01 14:58:04 +13:00
Aldo Cortesi 0188cf8a1a Just make using the user's terminal background the default.
This just makes sense. Later on, we'll have a config file in which users can
set the palette, so that they can over-ride the default background if they
really want.
2010-03-01 14:50:35 +13:00
Aldo Cortesi b91156723b Split mitmproxy and mitmdump - mitmdump is the non-interactive verison of mitmproxy. 2010-03-01 14:48:06 +13:00
Aldo Cortesi 6300a57212 Don't intercept replays - it makes no sense to do so. 2010-03-01 14:25:37 +13:00
Aldo Cortesi 639b1557a6 Don't show error if user tries to save, but specifies no path. 2010-03-01 14:20:12 +13:00
Aldo Cortesi f030718e32 Add "A" key, to accept all intercepted connections. 2010-03-01 14:08:10 +13:00
Aldo Cortesi a7cea1749b Make beeping more general.
- The "B" key now sets a filter pattern. Whenever the filter matches, the
  terminal beeps.
- The beep specification is now stored in the State object, where I want to
  keep all mutable state.
- I've removed the startup flags for beeping for now. We probably want to let
  users specify a number of options on startup, including interception patterns
  and limits. When we do this, we should also separate out the dumping and
  curses programs, because many of these options will only make sense in one of
  the two.
- This isn't an exact replacement for the beep functionality I ripped out,
  because specifying beeping on intercept is slightly cumbersome (you need to
  re-specify the intercept pattern using B). Sorry - we'll add a better way
  soon.
2010-03-01 13:56:28 +13:00
Aldo Cortesi a40775b846 Maintain compatibility with 0.9.8.x of urwid.
This is the most common deployed version, so it's worth doing a bit of extra
work to make sure mitmproxy runs smoothly under it.
2010-03-01 13:37:50 +13:00
Thomas Roth 72f8111f2b Show error if compiling of an expression fails. 2010-02-26 17:48:55 +01:00
Thomas Roth a5f87657e1 Added beeping. --bireq and --bires enables beeping on intercepted requests/responses. 2010-02-26 14:01:38 +01:00
Aldo Cortesi c5eb3c592d Fix hang when a POST is made with a 0 content length. 2010-02-26 20:07:37 +13:00
Thomas Roth 0e76f0f341 Added a 'keep terminal background' option (-t), so that you can use it with your own background color. (Foreground color following.) 2010-02-26 00:20:49 +01:00
Thomas Roth fc6f170731 Huge speed improvements if more than one request is in the queue. Speeds up every request by 0.1 seconds. 2010-02-25 17:49:21 +01:00