Maximilian Hils
d06b4bfa4e
remove proxy mode abstraction: always be clear which mode we are in
2014-09-08 14:32:42 +02:00
Maximilian Hils
6dbe431c5e
document --ignore, fix #350
2014-09-08 13:41:25 +02:00
Maximilian Hils
2b2d21aff0
add --ignore ui indication
2014-09-08 12:20:40 +02:00
Maximilian Hils
58ea198698
fix #349
2014-09-07 15:58:27 +02:00
Maximilian Hils
2a6337343a
update docs, mostly revert 2f44b26b4c
2014-09-05 15:16:20 +02:00
Maximilian Hils
1d45c54a04
Merge branch 'issue_341' into server_change_api
2014-09-04 14:18:21 +02:00
Maximilian Hils
1135666ee6
Merge branch 'master' into issue_341
2014-09-04 14:18:07 +02:00
deployable
4bdd1ed967
Add urwid stop prior to stack trace so exceptions are not cleared from screen
2014-09-04 10:47:27 +01:00
Maximilian Hils
ea55f2e012
Merge branch 'issue_341' into server_change_api
...
Conflicts:
examples/redirect_requests.py
libmproxy/console/common.py
2014-09-04 00:11:20 +02:00
Maximilian Hils
649e63ff3c
fix some leftovers
2014-09-04 00:10:01 +02:00
Maximilian Hils
2f44b26b4c
improve HTTPRequest syntax
2014-09-03 23:44:54 +02:00
Maximilian Hils
b0cfeff06d
fix #341 - work on flows instead of request/response internally.
2014-09-03 16:57:56 +02:00
Maximilian Hils
712e5860aa
ui: display * instead of 0.0.0.0 for the bound address
2014-09-03 12:24:14 +02:00
Maximilian Hils
5a808ca2a7
add status bar indicator for streaming
2014-07-25 18:55:01 +02:00
Maximilian Hils
4382829b7d
workaround: always make sure that flow.response.reply exists
2014-07-25 18:47:48 +02:00
Brad Peabody
5bb4e37dfd
fix to make it so streaming with mitmproxy doesn't explode due to no reply on response
2014-07-24 18:46:39 -07:00
Maximilian Hils
4b4a18a2e4
add --stream options, various fixes
2014-07-21 21:06:55 +02:00
Vyacheslav Bakhmutov
b7c1d05782
Remove global should_exit and fix tests
2014-06-13 14:14:55 +07:00
David Shaw
ec85531580
- working WBXML parser
2014-05-06 13:27:13 -04:00
Maximilian Hils
3b8d57ca86
fix issue #260
2014-04-07 14:40:01 +02:00
Maximilian Hils
28f82d052d
fix display bugs ( fixes #243 )
2014-03-18 19:38:02 +01:00
Maximilian Hils
f14eeef653
remove debug switch
2014-03-13 23:47:02 +01:00
Maximilian Hils
843b2e28bc
adjust command line docs, fix log typo
2014-03-13 23:25:13 +01:00
Maximilian Hils
4d9799f103
add support for log levels
2014-03-13 01:04:45 +01:00
Maximilian Hils
aefb30ea60
restrict -e to mitmproxy only (not mitmdump)
2014-03-12 22:13:00 +01:00
Maximilian Hils
c1fff51b1b
always use relative imports, fix status bar bug
2014-03-10 22:36:47 +01:00
Maximilian Hils
9cc10630c8
update docs, fix #215
2014-03-10 17:01:30 +01:00
Maximilian Hils
fe58c1c6eb
add advanced proxying options, add SSL-terminating capability to mitmproxy
2014-03-10 05:11:51 +01:00
Maximilian Hils
dd3aedca01
fix mentions of CONTENT_MISSING in libmproxy.console
2014-03-09 21:59:53 +01:00
Sergey Chipiga
edac95028a
remove redundant codeline
2014-03-05 21:00:29 +04:00
Aldo Cortesi
a34a483184
Adapt for new pathod and netlib APIs.
2014-03-02 15:14:22 +13:00
Pedro Worcel
cffae49e34
add helpful messages on wrap
2014-02-22 18:04:56 +13:00
Pedro Worcel
3e50034428
fix the wrapping on backward searches
2014-02-22 17:15:37 +13:00
Pedro Worcel
9fe6b8fd26
add docs
2014-02-22 16:36:35 +13:00
Pedro Worcel
4284fd3614
add multi-line support to backwards search
2014-02-22 16:32:22 +13:00
Pedro Worcel
3c02865e8b
add multi-line support
2014-02-22 15:32:35 +13:00
Pedro Worcel
7a154e1ae1
add basic backwards search
2014-02-22 15:00:10 +13:00
Aldo Cortesi
a85974eaa8
Fix flow initialization order error
...
Resolves #210
2014-02-08 17:17:35 +13:00
Aldo Cortesi
b642b4870b
Better response when mitmproxy crashes.
2014-02-08 14:15:19 +13:00
Maximilian Hils
cb397ec788
fix bugs, expose timestamp information to console ui
2014-02-06 00:53:39 +01:00
Maximilian Hils
80683e77bc
mock urwid to run console tests on windows, push failing testcases down to 0. :-)
2014-02-05 23:17:26 +01:00
Maximilian Hils
d864a326d2
fix all tests except those using set_url and get_url
2014-02-05 14:33:17 +01:00
Maximilian Hils
40bf42f14a
merge flow classes. current status: basic mitmdump working
2014-01-30 05:00:13 +01:00
Aldo Cortesi
7ddc941116
Silence pyflakes
...
And pick up one bug as a consequence.
2014-01-19 18:16:24 +13:00
Aldo Cortesi
bf1399fa2b
Handle views that don't support search gracefully
...
This includes all key/value formatted views, e.g. the image view. We
need to support these ultimately, but no time before the next release.
2014-01-19 13:23:38 +13:00
Aldo Cortesi
f5f46bf080
Re-enable caching on search.
2014-01-19 12:43:58 +13:00
Aldo Cortesi
4f69eef8f3
Extract command parsing and use in script grid editor
2014-01-13 14:15:17 +13:00
Aldo Cortesi
42d4a2fae9
Script refactoring: move script command parsing into script module.
2014-01-12 23:02:29 +13:00
Aldo Cortesi
e5776b8be3
Clean up and clarify script API
2014-01-12 13:59:32 +13:00
Aldo Cortesi
58e1b3a47f
Start refactoring scripts
...
- Move ScriptContext into script module
- Use mock module instead of hand-rolled mock objects in tests
2014-01-12 12:49:19 +13:00
Dan Wilbraham
1c2e638d53
Update ViewProtobuf in contentview.py to also decode as protobuf if the content_type is "application/x-protobuffer"
2014-01-05 23:40:02 +00:00
Aldo Cortesi
a49115a227
Remove / binding alias for limit
...
The search and limit functionality is too different.
2014-01-05 14:14:36 +13:00
Aldo Cortesi
7d37e0ce10
Merge pull request #193 from droope/search-functionality
...
Search functionality
2014-01-04 14:34:20 -08:00
Aldo Cortesi
8a599be060
Merge branch 'migrate_from_pil_to_pillow' of https://github.com/Kami/mitmproxy into Kami-migrate_from_pil_to_pillow
...
Conflicts:
requirements.txt
2014-01-05 11:15:27 +13:00
Aldo Cortesi
ac31039ad3
Merge pull request #198 from Kami/add_css_view
...
Add CSS view which beautifies minified CSS files
2014-01-04 14:04:02 -08:00
Tomaz Muraus
c5f4614ba5
Fix CSS view prompt, update display mode options.
2014-01-04 17:13:46 +01:00
Tomaz Muraus
ff2d7a7501
Provide more sensible serializer options.
2014-01-04 15:50:40 +01:00
Tomaz Muraus
e9f6302ec7
Add CSS view which beautifies CSS files if cssutils library is available,
...
otherwise it acts as a no-op.
2014-01-04 04:49:50 +01:00
Aldo Cortesi
f25c532960
Merge branch 'master' of ssh.github.com:cortesi/mitmproxy
2014-01-04 13:15:13 +13:00
Maximilian Hils
8472ed97ed
fix #195
...
(untested)
2014-01-03 23:35:25 +01:00
Tomaz Muraus
e9c2c0ac3a
Migrate from Pil to the latest version of Pillow.
2014-01-03 21:13:14 +01:00
Aldo Cortesi
3aa4b6603c
Fix app in mitmproxy console, update to bootstrap 3.
2014-01-03 15:29:32 +13:00
Pedro Worcel
799c877676
now really fix it + test
2013-12-26 22:18:34 +13:00
Pedro Worcel
a4b059c2a7
fix bug that happens after searching for a non-existant string, and
...
later for an existant one.
2013-12-26 21:53:04 +13:00
Pedro Worcel
34a09780ee
add docs
2013-12-26 17:26:51 +13:00
Pedro Worcel
70f6bb301b
added 'n' functionality, tidy up & testing
2013-12-26 17:16:26 +13:00
Pedro Worcel
21efe2f2c8
add looping around
2013-12-26 17:04:18 +13:00
root
bcf5620239
fix crash
2013-12-25 16:57:54 +13:00
root
95406bd119
Add focusing, and fixes non-clearance of prev searches. Add
...
documentation.
2013-12-25 16:50:29 +13:00
root
932464d0a0
test passing, UI still not working
2013-12-24 14:28:20 +13:00
root
359573a764
add search with / for compatibility with what I'll do.
2013-12-23 16:41:46 +13:00
Aldo Cortesi
1d536f64d5
Small workaround to make mitmproxy work again.
...
Further work is required to make scripts work again, though.
2013-12-09 22:34:47 +13:00
Maximilian Hils
a509a9037b
Merge branch 'master' into 0.10
2013-12-08 14:14:57 +01:00
Aldo Cortesi
3a1d85ab18
Merge pull request #134 from mhils/scripts_improvements
...
Support multiple scripts and script arguments. refs #76
2013-12-08 01:14:12 -08:00
Aldo Cortesi
7aeaf9d448
Merge pull request #161 from mitmproxy/external_webapp
...
External webapp
2013-12-08 01:09:46 -08:00
Rich Somerfield
9a986e0c1b
Fix divide by zero issue when timestamp start and end are the same
2013-11-26 14:14:51 -08:00
Maximilian Hils
2956c144d3
Merge branch 'master' into 0.10
2013-09-14 23:47:04 +02:00
Aldo Cortesi
a2643b52f9
Tweak timing display
...
- Remove elapsed time. Space is at a premium here, and this is somewhat
redundant with the rate figure. We should display complete timing information
somewhere in the detailed flow view.
- Tone down the colour. Reserve highlights for stuff that should really pop out
to the user.
- Make rate calculation more acurate. Include header sizes. Use response start
and end time, rather than request end and response end. This means that we show
actual transfer rates, not including DNS requests and so forth.
2013-08-23 10:25:44 +12:00
Maximilian Hils
bb4748fb8f
add option to expose webapp externally, remove distinct ip setting
2013-08-18 20:03:53 +02:00
Maximilian Hils
729677cd85
Merge branch 'master' into 0.10
2013-08-17 13:30:36 +02:00
Kyle Manna
41041159f6
console: Add support for displaying transfer rate
...
* Display the rate in the the response row.
* Very handy for passive performance analysis.
2013-08-13 16:33:53 -07:00
Kyle Manna
ea28496bea
console: Add support for displaying elapsed time
...
* Display the elapsed time in the the response row.
* Very handy for passive performance analysis.
2013-08-13 16:33:53 -07:00
Aldo Cortesi
edb10e33aa
Remove GPL notices left in source files after our change to the MIT license.
...
Thanks to Roy Shamir for reporting this.
2013-08-01 11:08:00 +12:00
Aldo Cortesi
5f0b5532bc
Show an error when attempting to decode invalid data.
2013-07-29 18:14:11 +12:00
Aldo Cortesi
d54398cc79
Repair minor user interface issue that caused brief flashes of duplicate flows in the flow list.
2013-07-29 12:38:41 +12:00
Aldo Cortesi
a21c989ccd
Fix startup with no state.
...
Bug introduced in previous patch.
2013-07-28 22:40:51 +12:00
Aldo Cortesi
10a9e3365f
Some refactoring of the console inteface.
...
Reduce some state duplication, by removing currentflow variable.
Fixes #141
2013-07-28 18:00:49 +12:00
Aldo Cortesi
5c1157ddaf
Move app instantiation out of proxy.py.
2013-07-24 10:32:56 +12:00
Maximilian Hils
fd36142018
Merge remote-tracking branch 'origin/scripts_improvements' into 0.10
2013-06-16 00:41:43 +02:00
Maximilian Hils
ba47690a03
always read files in binary mode
2013-06-16 00:23:44 +02:00
Maximilian Hils
2b4af8d475
add support for multiple scripts and script arguments. refs #76
2013-06-13 16:09:38 +02:00
Aldo Cortesi
1a5c27aa7d
Massage content-type before sending it to mime detection
...
Fixes #67
2013-06-09 11:26:44 +12:00
Aldo Cortesi
7ef68b5a13
Fix creation of new response when none existed before.
...
Fixes #133
2013-06-09 11:14:34 +12:00
Jason A. Novak
f78dada550
Add error checking to ViewProtobuf
...
There are protobufs that protoc can't parse. When protoc --decode_raw
fails, it returns nothing to stdin, and writes "Failed to parse input."
to stderr. Before this commit, if protoc --decode_raw couldn't parse
the protobuf, the blank stdout output would get returned to the view;
with this commit stderr gets caught and returned to the view.
2013-04-21 12:46:37 -05:00
Aldo Cortesi
793c41a5c4
Merge pull request #112 from hamstah/protobuf-view
...
Adds a new view for protocol buffers
2013-04-19 17:18:44 -07:00
Alexis Hildebrandt
3d7f31b23d
Correct display mode highlight keys
...
Add html display mode to the help documentation.
Correct html and hex display mode highlight keys (help used 'h' for hex).
Correct json display mode highlight keys.
2013-04-16 23:54:34 +02:00
Nicolas Esteves
d4cfbbb822
Adds a new view for protocol buffers
...
The view uses protoc from the Google protocol buffer
tools. If the tool isn't installed, the view isn't
shown.
Google protobuf repo:
https://code.google.com/p/protobuf/
2013-04-06 19:21:13 +01:00
Aldo Cortesi
800af34763
Fix crash on intercept.
...
Fixes #106
2013-03-23 14:40:03 +13:00
Aldo Cortesi
0e993bec6f
Add the --host option, which uses the value in the Host header for dispaly URLs.
...
- Can be toggled with "o" then "h" in mitmproxy
- Useful for transparent mode
2013-03-17 17:37:54 +13:00
Aldo Cortesi
cfb5ba89ce
Introduce a filtered flow writer, and use it in dump.py
...
Fixes #104
2013-03-14 09:19:43 +13:00
Aldo Cortesi
e608d10f45
Remove __slots__ to make it possible to inherit from Options classes.
2013-03-03 12:26:20 +13:00
Aldo Cortesi
75b5c97095
Revert "show current filepath in status bar"
...
This reverts commit bf8367d6cf
.
This just doesn't work. We need a better solution, probably in the next release.
2013-03-03 12:18:19 +13:00
Aldo Cortesi
aaf892e3af
Significantly refactor the master/slave message passing interface.
2013-02-17 12:42:48 +13:00
Chris Neasbitt
e9264a8253
Fixed a bug in format_flow in common.py. Changed the reference from timestamp to timestamp_start.
2013-01-18 23:04:11 -05:00
Aldo Cortesi
3c8dcf8808
Merge pull request #82 from kanzure/show-filepath-in-statusbar
...
Show current filepath in status bar
2012-12-30 00:49:45 -08:00
Bryan Bishop
bf8367d6cf
show current filepath in status bar
...
Showing the filename is useful when looking at multiple .mitm files
simultaneously.
2012-12-26 22:14:39 -06:00
Bryan Bishop
4d250095cb
fix external viewer using shlex
...
This makes spawn_external_viewer not crash when $EDITOR or $PAGER have
spaces or multiple arguments.
In addition, spawn_external_viewer now chmods the file to read-only to
remind users who use only an $EDITOR that this function does not read
the file when the user returns.
Also, some of the redundant exception case handling for editing has been
consolidated.
fixes #79
2012-12-22 18:26:15 -06:00
Bryan Bishop
505da188eb
Show an error when $EDITOR/$PAGER are unset.
...
This catches an exception that otherwise crashes mitmproxy.
fixes cortesi/mitmproxy#71
2012-12-05 12:58:29 -08:00
Aldo Cortesi
8c976ac7f0
Substantially rewrite AMF decoding.
...
This is tricky, but we should now handle a lot more corner-cases.
2012-11-26 13:25:07 +13:00
Mathieu Mitchell
15c367ffb4
Workaround for PIL's ambiguious import method and/or easy_install PIL packaging problem.
...
PIL documents two different way to import it's modules:
* import Image (http://www.pythonware.com/library/pil/handbook/introduction.htm )
* from PIL import Image (http://www.pythonware.com/library/pil/handbook/image.htm )
The same problem was noted in Django at https://code.djangoproject.com/ticket/6054
2012-11-23 11:48:24 -05:00
Aldo Cortesi
626fc39804
Move eventlog to new Urwid container API.
2012-11-23 15:44:43 +13:00
Aldo Cortesi
57d6650e8e
Urwid 1.1 compatibility.
2012-10-29 09:30:59 +13:00
Aldo Cortesi
68f1000e42
Improve error reporting for one-shot scripts.
2012-10-11 11:12:06 +13:00
Aldo Cortesi
0d59fd7e01
Move cleanBin and hexdump into netutils.
2012-09-24 11:21:12 +12:00
Aldo Cortesi
5630d3f660
Add help entry for H global header shortcut.
2012-09-02 11:53:00 +12:00
Aldo Cortesi
9c009a872e
Add U shortcut to add user-agent strings to global Headers editor.
2012-09-02 11:50:17 +12:00
Aldo Cortesi
3fc9af63c1
Fix a crash when re-editing a path prompt after an error.
2012-08-31 13:41:08 +12:00
Aldo Cortesi
26cefc95e8
Make grid editor file reading more robust.
2012-08-31 13:33:18 +12:00
Aldo Cortesi
a33e90f081
Add a shortcut to header editor to add standard User-Agent strings.
2012-08-31 13:28:04 +12:00
Aldo Cortesi
71ae158d7b
Display "No Content" instead of a parse error when there is no content.
2012-08-30 12:51:04 +12:00
Aldo Cortesi
38ddbcc314
Add a snippet to GridEditor help text explaining that we're using escaped strings.
2012-08-25 13:29:05 +12:00
Aldo Cortesi
87463049f1
Add a "R" shortcut to GridEditor, letting the user read unescaped data from file.
2012-08-25 13:25:59 +12:00
Aldo Cortesi
514e19b172
Do away with explicit encodings, and display an error message for invalid values.
2012-08-25 13:13:16 +12:00
Aldo Cortesi
c6d1fe9e59
Use Python-style escaped strings in GridEditor.
2012-08-25 12:54:34 +12:00
Aldo Cortesi
82893ffae2
Add an "r" shortcut in grid editors to read value from file.
2012-08-25 12:21:45 +12:00
Aldo Cortesi
3787f8befb
Add a graphical editor for path components (e -> p shortcut from request view screen).
2012-08-19 13:15:54 +12:00
Aldo Cortesi
1b7990897e
Command-line options for header setting.
2012-08-19 00:14:16 +12:00
Aldo Cortesi
3e96015e61
Add SetHeaders, analogous to ReplaceHooks, with a graphical editor in mitmproxy (H shortcut).
...
SetHeaders defines headers that are set on flows, based on a matching pattern.
Existing headers are over-ridden.
2012-08-18 23:41:04 +12:00
Aldo Cortesi
53e453f72e
Use the new ODict get_first convenience function in a bunch of places.
2012-08-18 18:14:30 +12:00
Aldo Cortesi
15e234558d
Further content view cleaups.
2012-08-18 17:51:34 +12:00
Aldo Cortesi
b70e91bbd4
Send tracebacks from content viewers to event log.
...
Also, 100% test coverage for content viewers.
2012-08-18 17:42:40 +12:00
Aldo Cortesi
e8553f966f
Further simplifcation and testing of contentviews.
2012-08-18 17:29:29 +12:00
Aldo Cortesi
11c63dcb9f
Huge cleanup of content viewers.
2012-08-18 17:08:17 +12:00
Sahn Lam
3189d144a5
Optional AMF decoding support
...
If PyAMF is installed, enable AMF decoding.
2012-08-17 18:45:26 -07:00
Aldo Cortesi
bbaa8bdba5
Add an HTML text outline view.
...
Uses html2text, from here:
https://github.com/aaronsw/html2text
2012-08-18 01:37:30 +12:00
Aldo Cortesi
1bfe847a84
Stop server playback after current playback buffer is exhausted.
2012-08-18 00:23:41 +12:00
Aldo Cortesi
20b270ae9a
Server replay from current buffer.
2012-08-18 00:13:04 +12:00
Rob Wills
8e68426ad6
Return from Flow View behaviour
...
Following focus trumps the re-focusing the "current" (or just-viewed) flow.
2012-08-02 00:06:34 -07:00
Rob Wills
c985e22196
Press "F" to Follow
...
Following of the flow list
- ConsoleState now has a follow_focus property
-- when True it will cause focus to follow added flows
- ConsoleMaster implements toggle_follow_flows()
-- when enabling follow, also jumps to most recent flow
- StatusBar reports follow_focus state
-- adds "following" to option list when true
- Added "F" to FlowList keys
-- implementation requests ConsoleMaster to toggle_follow_flows()
2012-08-01 23:57:56 -07:00
Aldo Cortesi
bb124e23b2
Prevent mitmproxy from treating logged info as urwid markup.
2012-07-27 10:08:10 +12:00
Aldo Cortesi
47b5fd666d
Fix mitmproxy file reading.
2012-07-27 02:13:21 +12:00
Aldo Cortesi
b4e9e55c34
Be more tolerant of corrupted or truncated flows.
...
We load as far as possible. mitmproxy will only terminate if it was not able to
recover any flows. mitmdump will stop loading as soon as an error is
encountered, but not exit with an error.
2012-07-24 15:15:41 +12:00
Maximilian Hils
c643234c98
fix -r option, read file in binary mode
2012-07-24 03:11:28 +02:00
Aldo Cortesi
150814f6a8
Jump back to correct flow when limit is applied.
2012-07-14 15:22:44 +12:00
Aldo Cortesi
3749d52b66
Make mitmproxy "W" over-write, not append.
...
The -w options in mitmdump and mitproxy should do the same thing. Append can
have unexpected consequences if the existing file is not a mitmdump.
2012-07-09 10:28:01 +12:00
Aldo Cortesi
bbd9acf551
Use FlowMaster streaming for "W" in mitmproxy.
2012-07-09 10:22:14 +12:00
Aldo Cortesi
572e8a4962
Add streaming to FlowMaster
2012-07-09 10:18:37 +12:00
Aldo Cortesi
d02bcade3a
Add a domain match filter (~d regex)
2012-07-06 22:21:44 +12:00
Aldo Cortesi
c4426952ad
Protect against exceptions thrown by third-party view libraries.
2012-07-06 15:43:33 +12:00
Aldo Cortesi
a7e64a1a03
mitmproxy: "W" shortcut key streams flows to file as responses arrive.
2012-07-06 14:41:10 +12:00