Commit Graph

1621 Commits

Author SHA1 Message Date
Sachin Kelkar
15548ff433 Feedback 2017-02-03 18:40:50 +05:30
Thomas Kriechbaumer
bcaaa2f40b coverage++ 2017-02-03 11:55:33 +01:00
Sachin Kelkar
0674485e76 Fix and cleanup 2017-02-03 15:02:35 +05:30
Sachin Kelkar
88dbfd5257 Add iTXt and zTXt tests 2017-02-03 14:12:54 +05:30
Sachin Kelkar
abef020e07 Fix as per feedback and add more tests 2017-02-03 14:12:54 +05:30
Sachin Kelkar
6202958048 Add png parser 2017-02-03 14:12:54 +05:30
Ujjwal Verma
11b4b3209d Closes #1960 'Z' removes unmarked flows 2017-02-03 01:35:53 +05:30
Thomas Kriechbaumer
79aa994275 fix merge 2017-02-02 17:26:31 +01:00
Maximilian Hils
8b6e3d8bd3 Merge pull request #1979 from 0neblock/master
Fixed following on flowlist
2017-02-02 17:24:04 +01:00
Aidan Cyr
00a6551622 Fixed following on flowlist
Fixed a focus_follow was missed when options were cleaned up.
2017-02-02 23:00:47 +11:00
Thomas Kriechbaumer
ae008ed80b replace tutils.raises with pytest.raises + shim 2017-02-02 12:59:01 +01:00
Thomas Kriechbaumer
ec92d7f67e cleanup test utils 2017-02-02 12:59:01 +01:00
Thomas Kriechbaumer
380d8ec370 increase test coverage 2017-02-02 10:15:01 +01:00
Thomas Kriechbaumer
2606de25e4 fix linting error 2017-02-02 09:36:33 +01:00
lymanZerga11
4b10212caf Add except clause to catch script parsing errors (#1929) 2017-02-01 15:27:10 +01:00
Aldo Cortesi
914659e888 Regularise setheaders options
As per replacements:

- Make the option type a string/tuple union
- Localise parsing strictly within the addon
- Adapt the console editor (we'll find a more elegant solution later)
2017-02-01 12:22:05 +13:00
Aldo Cortesi
4cc75a9560 Revamp replacement hooks
- Replacement specifiers can be either strings or tuples. This lets us cope
gracefully with command-line parsing (and posible quick interactive
specification) without having to special-case replacement hooks, or have
knowledge of hook specification leak outside the addon. We can also now use the
same command-line spec format in config files.
- Split replacement and replacement from file into separate addons and options.
Files are now read on each replacement, so you can edit replacement files in
place without restart.
- Modernise the test suite to use addon test helpers.

TODO: editing and displaying replace-from-file in console app
2017-02-01 11:10:28 +13:00
Aldo Cortesi
02f51d043d Merge pull request #1965 from cortesi/optname
Consolidate option names
2017-02-01 08:39:35 +13:00
Maximilian Hils
45ace793d0 🙈 2017-01-30 19:30:35 +01:00
Aldo Cortesi
35aff3b783 Consolidate option names
- Onboarding app options to onboarding*
- Console-specific options to console_*
- Web-specific options to web_*
2017-01-30 11:15:12 +13:00
Thomas Kriechbaumer
3028e06fd2 simplify termlog outfile handling 2017-01-25 17:50:07 +01:00
nish21
ab45e4d183 write errors to stderr (#1952) 2017-01-25 17:49:56 +01:00
Thomas Kriechbaumer
acfd548fa2 Merge pull request #1956 from Kriechi/version-string
improve version specifiers
2017-01-23 22:53:02 +01:00
Maximilian Hils
2eaac31344 Merge pull request #1945 from Kriechi/ca-expired
fix #939
2017-01-23 21:22:38 +01:00
Thomas Kriechbaumer
63beaa18ce improve version specifiers 2017-01-23 20:33:12 +01:00
Thomas Kriechbaumer
5792e2c483 test disable_h2c_upgrade addon 2017-01-23 18:38:27 +01:00
Thomas Kriechbaumer
d674de298c test websocket addon 2017-01-23 15:45:53 +01:00
Thomas Kriechbaumer
006eb39cc5 fix #939 2017-01-23 15:14:56 +01:00
Maximilian Hils
2ca48e5d08 Merge pull request #1940 from s4chin/add-marked-filter
web: Add ~marked filter
2017-01-20 15:26:51 +01:00
Sachin Kelkar
bc8f5a2d71 web: Add ~marked filter 2017-01-20 09:17:09 +05:30
Thomas Kriechbaumer
72b753c60f provide git information with --version
fixes #1848
2017-01-19 20:27:29 +01:00
Maximilian Hils
fe43e629fd console: display http version in details 2017-01-10 15:26:11 +01:00
Maximilian Hils
d953d83773 mitmdump: fix reading from stdin 2017-01-10 10:37:28 +01:00
Maximilian Hils
88f3459c7d stronger tests, lint 2017-01-07 23:08:50 +01:00
Maximilian Hils
ede124a587 fix #1910 2017-01-07 23:08:50 +01:00
Maximilian Hils
c41bd3fafd minor legibility improvements 2017-01-07 23:08:50 +01:00
Maximilian Hils
b1ec7e78cd Revert "add strutils.replace_surrogates"
This reverts commit 15ae88db08dbf2725c8c9f945f2006c4b2a10d46.
2017-01-07 23:08:50 +01:00
Maximilian Hils
c21ee90deb add strutils.replace_surrogates 2017-01-07 23:08:50 +01:00
Maximilian Hils
042261266f minor encoding fixes
- native() -> always_str()
  The old function name does not make sense on Python 3 only.
- Inline utility functions in message.py.
2017-01-07 23:08:50 +01:00
Maximilian Hils
af194918cf fix HTTP reason phrase encoding
While not explicitly spelled out in the RFCs,
the reason phrase is expected to be ISO-8859-1.
2017-01-07 23:08:50 +01:00
lymanZerga11
3ea76a7f3e Controls the length of URL displayed using the -d option (#1903) 2017-01-05 14:37:20 +01:00
chhsiao90
af0539c526 Fixed edit form failed 2016-12-31 14:38:33 +08:00
chhsiao90
a5f1215eb2 Allow underscore in hostname 2016-12-30 21:03:22 +08:00
Maximilian Hils
eab360a02b fix IO type checking 2016-12-28 14:21:19 +01:00
Maximilian Hils
0929e74b4e fix compat with Python 3.5.0 2016-12-28 14:20:53 +01:00
Maximilian Hils
8185cf2724 update io compat for 2.0 2016-12-27 21:03:59 +01:00
Maximilian Hils
e531a97a8b bump version for next release cycle 2016-12-27 20:52:22 +01:00
Thomas Kriechbaumer
7221f49b25 Merge pull request #1887 from Kriechi/h2-enable
enable HTTP/2 by default
2016-12-27 20:49:09 +01:00
Maximilian Hils
6ae378aa20 bump version to 1.0.1 2016-12-27 19:26:28 +01:00
Thomas Kriechbaumer
51d57cfd4a py36: fix type information 2016-12-27 16:28:12 +01:00
Thomas Kriechbaumer
cc9e70e3cc enable HTTP/2 by default 2016-12-26 21:51:10 +01:00
Aldo Cortesi
5167d59d63 Merge branch 'master' into admin 2016-12-24 11:20:12 +13:00
Thomas Kriechbaumer
24751965f9 remove output of dumper during tests 2016-12-21 23:22:14 +01:00
Thomas Kriechbaumer
7f33771b21 Merge pull request #1881 from mhils/fix-alpn-bytes
Always Decode ALPN Where Required
2016-12-20 21:27:23 +01:00
Maximilian Hils
f997b7fe14 always decode alpn where required 2016-12-20 16:49:38 +01:00
Maximilian Hils
77cd9224f9 Merge pull request #1880 from mhils/1877
Fix #1877
2016-12-19 19:04:45 +01:00
Maximilian Hils
4f3b50e417 fix io compat with previous releases 2016-12-19 16:19:37 +01:00
Maximilian Hils
fbce37054f fix #1877 2016-12-19 16:10:41 +01:00
Maximilian Hils
cbc0d3fd41 Merge pull request #1876 from mhils/1858
fix #1858
2016-12-19 15:19:02 +01:00
Maximilian Hils
c4e9000021 fix #1858 2016-12-19 01:15:10 +01:00
Thomas Kriechbaumer
504c289ad0 Merge pull request #1875 from Kriechi/dont-log-tracebacks
don't log full tracebacks
2016-12-17 22:53:05 +01:00
Maximilian Hils
975d1b87a3 fix #1867 (#1873) 2016-12-17 18:59:50 +01:00
Thomas Kriechbaumer
5cfc728d2e don't log full tracebacks 2016-12-17 18:28:34 +01:00
Thomas Kriechbaumer
ffcf060928 display ALPN information 2016-12-17 17:40:11 +01:00
Thomas Kriechbaumer
39a251a988 Merge pull request #1870 from Kriechi/http2-timeouts
http2: faster timeouts
2016-12-17 10:45:34 +01:00
Thomas Kriechbaumer
3eac72f1a3 http2: faster timeouts 2016-12-17 10:34:53 +01:00
Aldo Cortesi
85e0e5da4c Compat 0.19 -> 1.0
0.19 was never released, but let's include a conversion for it anyway, since it
was the master version.
2016-12-17 11:01:40 +13:00
Aldo Cortesi
aa90fd359d Administrivia: docs for new config file, minor adjustments
For now, the config file docs basically say "it's YAML, read the source". We
should do better for the next release.
2016-12-17 10:57:13 +13:00
Aldo Cortesi
2fe7cf448d Release administrivia: changelog stub, contributors, bump to v1.0 2016-12-17 10:35:13 +13:00
Aldo Cortesi
007aeef770 Addon test docs, remove stray deprecated events
Fixes #1572
2016-12-17 10:03:35 +13:00
Aldo Cortesi
c4929bbc19 Merge pull request #1863 from Kriechi/disable-h2c
disable h2c upgrades
2016-12-17 09:19:48 +13:00
Aldo Cortesi
cf15a3c3ef Merge pull request #1862 from mhils/remove-intercept-events
Remove intercept events, update view manually
2016-12-17 09:15:11 +13:00
Thomas Kriechbaumer
39a8d4dc22 disable h2c upgrades 2016-12-16 11:29:07 +01:00
Maximilian Hils
388fa7e716 remove intercept events, update view manually 2016-12-16 05:43:38 +01:00
Aldo Cortesi
6695ce4624 Merge pull request #1861 from cortesi/marking
console: mark view indiciator, fix empty flow list behaviour
2016-12-16 17:26:19 +13:00
Aldo Cortesi
e387c68b38 console: mark view indiciator, fix empty flow list behaviour
Fixes #1782
2016-12-16 11:57:45 +13:00
Aldo Cortesi
61e552553c Catch occasional protocol errors in regular connect
Fixes #1843 and #1847
2016-12-16 10:54:36 +13:00
Aldo Cortesi
6b5673e849 Merge pull request #1845 from mhils/mitmweb-improvements
Mitmweb Improvements
2016-12-16 10:04:12 +13:00
Maximilian Hils
727abdba44 Merge pull request #1852 from mhils/simplenamespace
Use types.SimpleNamespace instead of custom NS class
2016-12-13 15:06:14 +01:00
Maximilian Hils
44f94c8844 use types.SimpleNamespace instead of custom NS class 2016-12-13 14:23:21 +01:00
Maximilian Hils
e5b3c8bed3 fix #1850 2016-12-13 14:12:18 +01:00
Doug Freed
b39380b00f console: respect follow in eventlog
Also make it possible to toggle the option when the eventlog window has focus.
2016-12-12 15:41:31 +01:00
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
Aldo Cortesi
e644d2167c stub out proxyauth addon
Stub out basic workings, add and test configure event.
2016-11-13 16:22:33 +13:00
Aldo Cortesi
fe01b1435a upstream_proxy_auth -> upstream_auth
Also clarify what this does in commandline help.
2016-11-13 11:50:28 +13:00
Aldo Cortesi
3b00bc339d Complete upstream authentication module
- Handles upstream CONNECT and regular requests, plus HTTP Basic for reverse
proxy
- Add some tests to make sure we can rely on the .via attribute on server
connections.
2016-11-13 11:43:27 +13:00
Aldo Cortesi
a9b4560187 Refine handling of HTTP CONNECT
- CONNECT requests do not generate the usual http events. Instead, they
generate the http_connect event and handlers then have the option of setting an
error response to abort the connect.
- The connect handler is called for both upstream proxy and regular proxy CONNECTs.
2016-11-12 18:28:37 +13:00
Aldo Cortesi
38f8d9e541 Add the http_connect event for HTTP CONNECT requests 2016-11-12 12:44:43 +13:00
Aldo Cortesi
bc01a146b0 Upstream proxy auth to addon 2016-11-12 11:58:04 +13:00
Aldo Cortesi
00492919e7 Add HTTPFlow.mode to record the HTTP proxy layer mode 2016-11-12 11:58:04 +13:00
Aldo Cortesi
5be35d258f Use an enum for http protocol modes 2016-11-12 11:58:04 +13:00
Aldo Cortesi
fbaade4298 Remove promotion to raw TCP based on heuristics
This seems terribly dangerous to me. Let's expand explicit control instead.
2016-11-12 11:58:04 +13:00
Aldo Cortesi
3958940420 Test failure during 100-continue
Also:

- Remove duplicate and unused code
- Tighten scope of HttpReadDisconnect handler - we only want to ignore this for
the initial read, not for the entire block that includes things like the expect
handling.
2016-11-12 11:58:04 +13:00
Aldo Cortesi
82ac7d05a6 Bug: ask requestheaders before request body is read
Also add the beginnings of a test suite to exercise issues like this.
2016-11-12 11:58:04 +13:00
Aldo Cortesi
53b77fc475 proxy.protocol.http: cleanups, extract request validation 2016-11-12 11:58:04 +13:00
Aldo Cortesi
4eea265925 Remove unused protocol attribute on connections. 2016-11-12 11:58:04 +13:00
Aldo Cortesi
a653f314ff proxy.protocol.http: flatten for refactoring
Flatten all of _process_flow, so we can see what's going on in there.
2016-11-12 11:58:04 +13:00
Maximilian Hils
afa124a9f6 Merge pull request #1723 from Kriechi/http2-conns
http2: move h2 connection object
2016-11-09 15:19:55 +01:00
Maximilian Hils
77f05178ad mitmweb: minor fixes 2016-11-09 13:01:25 +01:00
Maximilian Hils
a0ddedff6f web: update static assets 2016-11-09 10:09:00 +01:00
Maximilian Hils
d9597add76 web: fix header update 2016-11-09 10:04:51 +01:00
Maximilian Hils
c2a130dced web: simplify flow storage 2016-11-08 17:55:22 +01:00
Maximilian Hils
85476d9915 clean up mitmweb 2016-11-08 17:54:27 +01:00
Maximilian Hils
62ca896492 fix mitmweb 2016-11-08 17:43:46 +01:00
Thomas Kriechbaumer
f140b1d84f http2: move h2 connection object 2016-11-05 20:39:42 +01:00
Aldo Cortesi
86b7661456 Remove sticky[auth,cookie] from http objects
- they're unused
- if we want them, they should be set by the addon in the new metadata store
2016-11-04 11:50:19 +13:00
Aldo Cortesi
067198a5dd Remove deprecated interfaces 2016-11-04 11:47:47 +13:00
Aldo Cortesi
4eb2b56dec Let's not over-ride __bool__ on connection objects
If I had a thousand years and every thesaurus in the world, I still couldn't
adequately express how much I dislike this piece of interface design.
2016-11-04 10:59:41 +13:00
Aldo Cortesi
deb66d3cac addons.setheaders: fix configure bug, tests to taddons 2016-11-04 09:09:39 +13:00
Aldo Cortesi
b51a96081a addons.view: test suite to 100%
This takes coverage for all of /addons to 100%
2016-11-04 08:55:01 +13:00
Aldo Cortesi
17e828b243 addons.view: test improvements 2016-11-03 20:53:06 +13:00
Aldo Cortesi
5ade93f2ad addons.streambodies: 100% test coverage 2016-11-03 20:16:07 +13:00
Aldo Cortesi
e9a96f4d7f addons.script: 100% test coverage 2016-11-03 19:36:34 +13:00
Aldo Cortesi
d31f2698a5 addons.onboarding: remove duplicate code 2016-11-03 16:20:38 +13:00
Aldo Cortesi
77e6dfe35c streamfile: make options less crazy
Instead of a (file, mode) tuple, move to "streamfile" as the path, and
"streamfile_append" to specify if we should append or not.

Leave the command-line options intact for now.
2016-11-03 15:18:55 +13:00
Aldo Cortesi
9f77c79227 FileStreamer -> StreamFile
options.wfile -> options.streamfile
2016-11-03 15:00:18 +13:00
Aldo Cortesi
43a8221989 addons: filestreamer test cov to 100%
Also address a bug in taddons that caused options changes that raised errors to
be retained rather than rolled back.
2016-11-03 14:50:23 +13:00
Aldo Cortesi
fbdce4b629 addons filstreamer: tests and bugfixes
- Move tests to taddons
- Fix a bug where options updates caused streaming to halt
2016-11-03 12:44:19 +13:00
Aldo Cortesi
b867fb35a3 addons: dumper spit and polish
- 100% test coverage
- Cleanups
- Add test/mitmproxy/addons/dumperview.py, a small utility for viewing dumper
output variations
2016-11-02 22:47:49 +13:00
Aldo Cortesi
a75b3474a4 tests: convert test_dumper to use taddons 2016-11-02 11:17:08 +13:00
Aldo Cortesi
59b269425f tests: client_playback coverage 2016-11-02 10:59:33 +13:00
Aldo Cortesi
c55e8d8f62 tests: clean up test/mitmproxy/tutils.py
Remove aliases, use mitmproxy/test/tutils instead.
2016-11-02 09:44:18 +13:00
Vincent Haupert
f9add49833 Only raise exception if an error occurred. 2016-10-31 23:53:11 +01:00
Aldo Cortesi
c33557a230 Extend mypy checks to mitmproxy/addons
Fix a number of issues to do this.
2016-11-01 10:38:35 +13:00
Aldo Cortesi
50deaf56bf Remove addons.State
- Do a first-pass port of mitmweb. Some stuff still broken.
- Remove more all State tests from the test suite
2016-11-01 10:06:28 +13:00
Aldo Cortesi
ecffaab862 console: Minor cleanups 2016-11-01 09:25:32 +13:00
Aldo Cortesi
daf355bb4c console: add caching sort keys
This is a tad complicated. The underlying sorted list implementation expects
the sort key to be stable for the lifetime of the object. However, if we sort
by size, for instance, the sort order changes as the flow progresses through
its lifecycle. We address this through two means:

- Let order keys cache the sort value by flow ID.
- Add a facility to refresh items in the list by removing and re-adding them
when they are updated.
2016-10-30 21:11:30 +13:00
Aldo Cortesi
9abfb1aac2 console: re-add follow focus 2016-10-30 19:47:32 +13:00
Aldo Cortesi
9322167eeb console: show order option in status bar 2016-10-30 18:33:51 +13:00
Aldo Cortesi
5975cc8301 console: status bar improvements
- Arrow to show flow order
- Hook statusbar up to focus change to fix some update issues
2016-10-30 18:25:33 +13:00
Aldo Cortesi
f08b57fb9b console: "v" to reverse flow order 2016-10-30 17:57:43 +13:00
Aldo Cortesi
a67a591893 console: o for flow order
"o" shortcut and --order cmdline option to change flow order.

Options is now bound to "O".
2016-10-30 17:42:34 +13:00
Aldo Cortesi
7a6bae336b addons.view: fix tests 2016-10-30 17:03:06 +13:00
Aldo Cortesi
a43cce504a console: various cleanups 2016-10-30 16:58:19 +13:00
Aldo Cortesi
62ead34a94 mitmproxy.console: Complete port to view. 2016-10-30 16:15:33 +13:00
Aldo Cortesi
6b6c44551a addons.view: Add first-class support for marking
Marking now works differently - it's no longer just another filter, it's
applied in addition to the filter. This means you can apply a filter, mark some
flows, and then toggle between marked and unmarked flows matching the filter.

I'm leaving the filter for marked flows intact - it will come in handy in other
situations.
2016-10-30 15:45:36 +13:00
Aldo Cortesi
2b76db1272 console: Port from state to view
First phase of the port - basic flow list and flow view functionality working.
More to come.
2016-10-30 14:56:36 +13:00
Aldo Cortesi
b9eb1a3479 Add options.default_contentview
This is the first step in a longer process of revamping content views. For the
moment, the option is not exposed on the command line.
2016-10-30 12:05:37 +13:00
Aldo Cortesi
944dcbaaa0 Cleanups: remove intercept from addons.state, unused imports 2016-10-30 11:13:05 +13:00
Aldo Cortesi
81a00f6f76 Replace interception in mitmproxy and mitmweb with addon
Fixes #1674
2016-10-30 11:07:09 +13:00
Aldo Cortesi
d1f14961ed test.taddon: Add cycle() method, use it to test addons.intercept 2016-10-30 10:52:57 +13:00
Aldo Cortesi
b4904d33ba Move test flow creators to mitmproxy.test.tflow 2016-10-30 10:12:39 +13:00
Aldo Cortesi
2dc3284fbb Add addons.intercept
- Add an addon to handle intercept based on a filter pattern
- Start sketching out a nicer testing truss for addons in mitmproxy.test.taddon
2016-10-29 15:44:48 +13:00
Aldo Cortesi
71d2636594 Sync 2016-10-29 12:35:10 +13:00
Aldo Cortesi
005c22445b addons.view: focus.focusflow -> focus.flow 2016-10-29 11:55:44 +13:00
Aldo Cortesi
7ecaeb0214 addons.view.focus: next and prev methods 2016-10-29 11:50:10 +13:00
Aldo Cortesi
32a0a7b860 addons.view: flow settings
Add a flow settings mechanism, enable focus and settings unilaterally.
2016-10-29 11:37:32 +13:00
Aldo Cortesi
14df969434 addons.view.focus: Better handling of view refresh
When we refresh and our current focus goes out of scope, we set the focus to
the element nearest the old focus.
2016-10-29 11:08:35 +13:00
Aldo Cortesi
90e7142b5c addons.View: better order reversal
Deal with some subtleties in order reversal, add a toggle method that emits
refresh.
2016-10-29 10:55:57 +13:00
Aldo Cortesi
12a70d03ad addons.view: Add a focus tracker 2016-10-29 10:17:29 +13:00
Aldo Cortesi
9dcc3a3e20 addons.View: hook up signals 2016-10-29 08:25:19 +13:00
Aldo Cortesi
69bacee1d8 Sketch out addons.View
The first iteration of a replacement for addons.State
2016-10-29 08:25:19 +13:00
Aldo Cortesi
9be34baa40 Merge pull request #1687 from Kriechi/http2-type-information
http2: add more type information
2016-10-29 08:12:41 +13:00
Thomas Kriechbaumer
d86cb76e5b http2: add push indicator 2016-10-27 20:33:30 -07:00
Thomas Kriechbaumer
f1878eb051 http2: add more type information 2016-10-27 20:24:57 -07:00
Maximilian Hils
e71b634c58 Merge pull request #1684 from mhils/1675
Fix #1675
2016-10-27 16:22:37 -07:00
Maximilian Hils
4ac4fe2849 Merge pull request #1671 from mitmproxy/bump-h2
Bump h2 version
2016-10-27 16:13:30 -07:00
Maximilian Hils
62c9c3db4f fix #1675 2016-10-27 16:12:18 -07:00
Thomas Kriechbaumer
44ac370f08 upgrade h2 to >=2.5.0 2016-10-27 15:10:53 -07:00
Maximilian Hils
48f51849b9 fix #1676 2016-10-27 13:10:57 -07:00
Maximilian Hils
a93baad655 Merge pull request #1680 from mhils/remove-lrucache
Remove mitmproxy.utils.lrucache
2016-10-27 11:45:35 -07:00
Maximilian Hils
97f1236c99 Merge pull request #1670 from chhsiao90/display-cipher-#582
Resolved #582: display ClientConnection select cipher of TLS
2016-10-27 11:38:22 -07:00
Maximilian Hils
6b4c705197 remove mitmproxy.utils.lrucache 2016-10-27 11:24:36 -07:00
Aldo Cortesi
72ac572226 Merge pull request #1673 from mhils/issue-1620
fix #1620
2016-10-27 08:26:48 +13:00
chhsiao90
d52f35428c Show tls version on console 2016-10-26 14:36:14 +08:00
Maximilian Hils
eda1b39a74 minor fixes 2016-10-25 22:06:52 -07:00
Maximilian Hils
f11b289c39 fix #1620 2016-10-25 21:56:13 -07:00
Maximilian Hils
b1bdae3d1c typecheck options, fix current inconsistencies 2016-10-25 20:45:48 -07:00
chhsiao90
960f2e8bf0 Resolved #582: display ClientConnection select cipher of TLS 2016-10-26 11:32:42 +08:00
Maximilian Hils
917c701562 make options keyword-only 2016-10-25 17:34:30 -07:00
Maximilian Hils
145c2892f7 Merge pull request #1664 from chhsiao90/sni-display-#1639
Resolved #1639: display sni on ClientConnection
2016-10-24 19:56:05 -07:00
chhsiao90
39ac29e37c Resolved #1639: display sni on ClientConnection 2016-10-25 10:46:53 +08:00
Maximilian Hils
ef4e9b2b85 Merge pull request #1656 from mhils/improve-export-2
Improve Flow Export
2016-10-24 19:19:58 -07:00
Maximilian Hils
21f133fae9 fix FlowView._get_content_view 2016-10-24 16:03:28 -07:00
Sahil Chelaramani
7b3505336a replace mitmproxy.utils.lrucache with functools.lru_cache 2016-10-24 16:03:16 -07:00
Maximilian Hils
c14ae74d2e disable erroneous linting errors 2016-10-24 15:59:57 -07:00
Maximilian Hils
5670e61a31 add version check for Python 3.4- 2016-10-24 14:26:07 -07:00
Maximilian Hils
e87daa70f3 improve flow export 2016-10-22 20:32:39 -07:00
Aldo Cortesi
6170493615 Don't call error for flow kill
This is now the error handler on master, so whatever the intetion was it's now
definitely wrong.
2016-10-22 15:56:42 +13:00
Aldo Cortesi
9fc1547053 console: give statusbar messages a default timeout 2016-10-22 15:06:24 +13:00
Aldo Cortesi
cc8b422d9d multidict: remove to_dict
We never use it, and it is dangerously ambiguous when a key is associated with
a list.
2016-10-21 11:42:21 +13:00
Aldo Cortesi
18ee6255c0 multidict: ditch ImmutableMultiDict
A contorted class we only use for cookie attributes. We don't need it.
2016-10-21 11:40:05 +13:00
Aldo Cortesi
635c77d4ed console: correct log event handling i
Fixes #1640
2016-10-21 09:25:34 +13:00
Aldo Cortesi
8430f857b5 The final piece: netlib -> mitproxy.net 2016-10-20 11:56:38 +13:00
Aldo Cortesi
853e03a5e7 netlib.tutils -> mitmproxy.test.tutils
There's a LOT more to be done refactoring our different conflicting test utils.
2016-10-20 11:42:55 +13:00
Aldo Cortesi
9491d8589a Improve exception hierarchy
ProxyException -> MitmproxyException
NetlibException inherits from MitmproxyException
2016-10-20 11:31:18 +13:00
Aldo Cortesi
01a449b5cb netlib.exceptions.* -> mitmproxy.exceptions 2016-10-20 11:27:05 +13:00
Aldo Cortesi
f964d49853 netlib.certutils -> mitmproxy.certs 2016-10-20 11:02:52 +13:00
Aldo Cortesi
9870844b38 netlib.utils -> netlib.check
Now only contains is_valid_[host,port]

Intermediate step - this will be in mitproxy.net soon.
2016-10-20 10:46:47 +13:00
Aldo Cortesi
e0f3cce14c netlib.utils.[get,set]bit -> mitmproxy.utils.bits 2016-10-20 10:38:57 +13:00
Aldo Cortesi
9555126585 netlib.utils.BiDi -> mitmproxy.types.bidi.BiDi 2016-10-20 10:32:09 +13:00
Aldo Cortesi
a684585e7c netlib.debug -> mitmproxy.utils.debug 2016-10-20 10:25:36 +13:00
Aldo Cortesi
1ecb25cdc1 mitmproxy.types.[basethread,multidict,serializable] 2016-10-20 10:22:23 +13:00
Aldo Cortesi
f45f4e677e netlib.strutils -> mitmproxy.utils.strutils 2016-10-20 10:11:58 +13:00
Aldo Cortesi
1407830280 netlib.human -> mitmproxy.utils.human 2016-10-20 09:45:18 +13:00
Aldo Cortesi
069119364d Create mitmproxy.utils hierarchy
- Add mitproxy.utils.lrucache, mitproxy.utils.data
2016-10-20 09:35:55 +13:00
Aldo Cortesi
7440232f60 netlib.version -> mitmproxy.version 2016-10-20 09:20:44 +13:00
Aldo Cortesi
9e7438fb18 console: fix master invocation order 2016-10-19 23:16:18 +13:00
Aldo Cortesi
e73c7fe77e mitmproxy.protocol -> mitmproxy.proxy.protocol
The protocols here are compltely proxy-specific, are only used from within the
proxy module, and are not exposed to users.
2016-10-19 23:11:56 +13:00
Aldo Cortesi
24cf8da27e Move all tools into mitmproxy.tools, move models/* to top level
The primary motivation here (and for all the other moving around) is to present
a clean "front of house" to library users, and to migrate primary objects to
the top of the module hierarchy.
2016-10-19 20:26:05 +13:00
Aldo Cortesi
5a68d21e8c Remove flow module entirely, move contents to top level
mitmproxy.flow.io -> mitmproxy.io
mitmproxy.flow.export -> mitmproxy.export
2016-10-19 15:08:35 +13:00
Aldo Cortesi
7c32d4ea2a flow.state -> addons.state 2016-10-19 14:48:42 +13:00
Aldo Cortesi
22eebfd574 addons.Addons -> addonmanager, builtins -> addons 2016-10-19 14:39:39 +13:00
Aldo Cortesi
966418725b controller.Log -> log.Log 2016-10-19 14:14:59 +13:00
Aldo Cortesi
bce387a5a0 Kill flow.master - create master.Master
Also extract events into .events
2016-10-19 13:22:50 +13:00
Aldo Cortesi
264a09e778 Let's dispense with this fiction that we support multiple servers
It's simple enough to re-add if needed, and until then is just cruft.
2016-10-19 12:37:32 +13:00
Aldo Cortesi
da8dec9823 addons: add AddonHalt exception
This can be raised from an addon handler to stop further processing of a flow.

Use this to prevent further handling of web app requests.
2016-10-19 12:01:08 +13:00
Aldo Cortesi
87629586ae web app cleanups: tests and examples 2016-10-19 11:48:51 +13:00
Aldo Cortesi
ceb8caee98 Web apps to addons
This commit removes the app registry, adds a wsgiapp addon base, and ports the
onboarding app to it.
2016-10-19 11:40:51 +13:00
Aldo Cortesi
466f5e56a1 Convert flow.state to an addon
A first step, and already many things are much nicer.
2016-10-18 21:51:36 +13:00
Aldo Cortesi
d5056c5627 accept_addon -> resume, intercept/resume events 2016-10-18 12:02:35 +13:00
Aldo Cortesi
825b02d495 master.duplicate_flow -> state.duplicate_flow
This is a pure operation on state, and doesn't belong on master.

Part of prep to move state to an addon.
2016-10-18 11:29:51 +13:00
Aldo Cortesi
b25d94a6ac Response body streaming to addon 2016-10-18 10:42:05 +13:00
Maximilian Hils
c6d485bc77 dumper: limit url length 2016-10-17 12:56:11 +02:00
Thomas Kriechbaumer
94c9dd66e6 remove empty lines at beginning of file 2016-10-17 10:32:12 +02:00
Thomas Kriechbaumer
e59a3be09d removed unused import 2016-10-17 09:55:49 +02:00
Maximilian Hils
758860531a fix socks5 mode with tls 2016-10-16 23:05:51 -07:00
Aldo Cortesi
c774a9fec9 python3: clean up super and __future__ 2016-10-17 18:03:07 +13:00
Aldo Cortesi
a647b30365 python3: clean up class brackets 2016-10-17 17:37:08 +13:00
Aldo Cortesi
fb22f2ff4f Zap object base class 2016-10-17 17:37:08 +13:00
Maximilian Hils
666c59cbfb actually fix merge 🙈 2016-10-16 21:33:24 -07:00
Maximilian Hils
bdaa13d498 fix merge 2016-10-16 21:23:04 -07:00
Maximilian Hils
9389601025 Merge branch 'such-types' 2016-10-16 21:17:39 -07:00
Maximilian Hils
5a07892bfc py2--: inline type info 2016-10-16 20:56:46 -07:00
Aldo Cortesi
ce98a9219e test & examples: zap six 2016-10-17 16:45:45 +13:00
Aldo Cortesi
839813a84c mitmproxy: zap six 2016-10-17 16:22:44 +13:00
Aldo Cortesi
8360f70024 First-order conversion to Python3-only
- Zap various occurrences of Python2 in docs and scripts
- Remove six from netlib, and some other places where obvious project-wide
search and replace works.
2016-10-17 15:18:47 +13:00
Aldo Cortesi
4918feb725 Add stub converter for 0.19 io format 2016-10-17 08:47:03 +13:00
Aldo Cortesi
00603021d9 docs: concurrency, developing scripts 2016-10-16 20:39:34 +13:00
Aldo Cortesi
9a0195bf64 scripts: keep scripts just after the ScriptLoader in addon chain
We need scripts to run _before_ filestreamer, so we can't just add them to the
end of the chain. This patch also fixes an issue that could cause scripts to be
initialised un-necessarily if only the order of scripts in options changed.
2016-10-16 20:26:06 +13:00
Aldo Cortesi
97b594b848 mitmdump: fix addon order - dumper must be last
This is so we can see the effects of script rewriting using -dd.
2016-10-16 20:26:06 +13:00
Aldo Cortesi
55cb2a8547 docs: logging and the context 2016-10-16 20:26:06 +13:00
Aldo Cortesi
a6c7a1ff91 scripts: handle SystemExit from scripts explicitly 2016-10-16 20:26:06 +13:00
Aldo Cortesi
dc19ff7a9d mitmdump: show script errors on startup
Add the terminal logger before any other addons, so we see script errors on
startup.
2016-10-16 20:26:06 +13:00
Aldo Cortesi
fb69c9c345 docs: overview, classes, arguments 2016-10-16 20:26:06 +13:00
Aldo Cortesi
61040a7bcd docs: improve external source links, tweak code docs 2016-10-16 20:26:06 +13:00
Aldo Cortesi
c8f2f1019d Clean up models.http a bit
- We don't need a deprecation warning here
- Bring imports inline with policy
2016-10-16 20:26:06 +13:00
Aldo Cortesi
fdb6a44245 docs: cleanups improvements and fighting sphinx
- Hide links to internal code listings, and link to github instead
- Improve formatting of code/example captions
- Fix outdated documentation of command-line options
- Complete documentation of all events + improved formatting
- tcp_open -> tcp_start, tcp_close -> tcp_end to reduce confusion
2016-10-16 20:26:06 +13:00
Maximilian Hils
26af9b29fc fix #1611 2016-10-15 18:25:18 -07:00
Maximilian Hils
5fab94580e fix #1605 2016-10-13 20:31:14 -07:00
Maximilian Hils
b422ba5328 simplify eof detection 2016-10-05 17:45:48 -07:00
Thomas Kriechbaumer
ff388f2e62 Merge pull request #1598 from cortesi/dummystate
mitmdump: use a dummy state object
2016-10-04 15:36:31 +02:00
Thomas Kriechbaumer
90898f9084 use flt instead of filt for flowfilter expressions 2016-10-04 14:51:04 +02:00
Aldo Cortesi
e189652680 mitmdump: use a dummy state object
Most of the mitmdump memory leak turns out to be due to our leaky handling of
the state object. Since mitmdump doesn't actually use the state object, we can
replace it with a shell.
2016-10-04 16:52:58 +11:00
Aldo Cortesi
7fe09f4d26 Consolidate logging
- Make log event handler work
- Move terminal event log into an addon
- Clean various log related errors and duplications
2016-10-04 13:00:15 +11:00
Aldo Cortesi
2bd8686629 http2: support the requestheaders event
We do this by splitting read_request into read_request_headers and
read_request_body.
2016-10-04 10:33:57 +11:00
Aldo Cortesi
2e48b60ff1 Clarify channel interaction pattern
Before this patch, it wasn't clear when the arguments to an event could be
modified, and when a new object should be returned. After this patch, the right
thing to do is to modify the arguments in 99% of cases. The only exception to
this is root_layer, for which we can find a better structure down the track.
2016-10-04 08:13:56 +11:00
Aldo Cortesi
1ae73b9157 Add requestheaders event
HTTP1 only for now, HTTP2 coming next.
2016-10-04 08:13:56 +11:00
Aldo Cortesi
b735694653 websockets_handshake -> websocket_handshake
The plural feels awkward.
2016-10-04 08:13:56 +11:00
Thomas Kriechbaumer
36c04f1631 fix flowfilter.match args 2016-10-03 12:04:17 +02:00
Thomas Kriechbaumer
bb60b76af4 use flowfilter.match 2016-10-03 11:45:54 +02:00
Thomas Kriechbaumer
5f8b8bf35e move flow.match to flowfilter.match 2016-10-03 11:45:54 +02:00
Thomas Kriechbaumer
ba84248910 rename mitmproxy.filt -> mitmproxy.flowfilter 2016-10-03 11:45:54 +02:00
Maximilian Hils
611dad12a7 Revert "Add API to programmatically create new requests (#1534)"
This reverts commit ccbdcd684b,
which yielded a test timeout.
2016-10-02 23:08:51 -07:00
Tyler St. Onge
ccbdcd684b Add API to programmatically create new requests (#1534) 2016-10-01 13:06:59 +02:00
Aldo Cortesi
66825568d7 console: fix client replay 2016-09-30 12:13:49 +10:00
Aldo Cortesi
6d1f036021 Merge remote-tracking branch 'upstream/master' 2016-09-30 11:02:08 +10:00
Aldo Cortesi
825b0917bd docs: minor formatting/cleanups 2016-09-30 10:59:40 +10:00
Maximilian Hils
e0cd33b586 fix host header modification, refs #1571 2016-09-28 11:06:39 -07:00
Ryan Laughlin
ad6d675b20 In reverse proxy mode, always send SNI 2016-09-27 10:49:04 -04:00
Maximilian Hils
1a762cdce5 override host header in reverse proxy mode, refs #1571 2016-09-26 22:30:01 -07:00
Maximilian Hils
ebccc103d8 Revert "minor fixes"
This reverts commit f94219e737.
2016-09-26 18:07:04 -07:00
Maximilian Hils
f94219e737 minor fixes 2016-09-26 17:53:10 -07:00
Maximilian Hils
eeec17902f update dependencies, minor fixes (#1577) 2016-09-24 21:01:48 -07:00
Maximilian Hils
de65aebfdf fix tests 2016-09-24 18:28:30 -07:00
Maximilian Hils
6f86741574 minor fixes 2016-09-24 18:21:58 -07:00
Maximilian Hils
0a643ad20f remove option argument for addons.add (#1576) 2016-09-24 18:21:12 -07:00
Maximilian Hils
20bcfbb5d0 fix #1492 2016-09-24 15:37:19 -07:00
Maximilian Hils
276b467b0e fix #1393 2016-09-23 22:52:58 -07:00
Maximilian Hils
9142da1a7d Merge pull request #1566 from mhils/issue-1546
add websocket on/off switch, improve logging (fix #1546, fix #1547)
2016-09-22 03:06:39 -07:00
Maximilian Hils
d585236a82 Merge pull request #1567 from mhils/issue-1467
Scripts: cut traceback properly, fix #1467
2016-09-22 03:06:11 -07:00
Maximilian Hils
77868434e7 fix tests 2016-09-22 02:10:02 -07:00
Maximilian Hils
2510cd3111 add websocket on/off switch, improve logging (fix #1546, fix #1547) 2016-09-22 02:10:02 -07:00
Maximilian Hils
a3329c5a80 scripts: cut traceback properly, fix #1467 2016-09-22 02:03:12 -07:00
Maximilian Hils
f59ae4a57f Merge branch 'fully_transparent' 2016-09-22 01:58:08 -07:00
Maximilian Hils
e5b79a6d72 minor cleanup 2016-09-22 01:58:01 -07:00
smill@cuckoo.sh
ec588f8822 Removed obsolete code. 2016-09-22 08:51:17 +00:00
Maximilian Hils
dbc6344c8c Merge pull request #1522 from chhsiao90/dump-ready-#1505
Notify when proxy server started
2016-09-21 22:26:59 -07:00
chhsiao90
d044786ac8 Notify when proxy server started 2016-09-22 13:23:30 +08:00
Maximilian Hils
e4ae35dabb fix mitmdump error logging, fix #1549 (#1565)
This commit replaces the logging statement introduced in
afe34e8b28 with the previous implementation
where an exception is raised. ProtocolExceptions are normally logged as regular warnings,
achieving the same effect for the end user. However, this retains the full stack trace
for debug-level logging, which makes the analysis of client errors considerably easier.
2016-09-21 21:49:32 -07:00
Maximilian Hils
1e5a5b03f8 Merge pull request #1509 from arjun23496/regex_star_mod
Fixes #1471 - Change .* to match entire body
2016-09-21 18:13:14 -07:00
Doug Freed
3130d58267 console/options: kill -> replay_kill_extra
@cortesi renamed the kill option to replay_kill_extra in b0213a2, but
missed a usage here because it was in a string. This fixes opening the
options menu in console.
2016-09-17 20:10:08 -04:00
vulnminer
e1f021d732 Update app.py 2016-09-17 18:45:37 +03:00
smill
83a28021ad Fixed travis-ci issues. 2016-09-14 19:11:57 +00:00
Aldo Cortesi
f2e010ebc0 Misc cleanups 2016-09-12 11:27:30 +12:00
Aldo Cortesi
97b15b58b7 console: update flow list when state is modified 2016-09-11 20:06:21 +12:00
Aldo Cortesi
34e17efaa0 Remove obsolete exceptions.ScriptException 2016-09-11 20:02:05 +12:00
Aldo Cortesi
cfb943bfdd Redesign client replay
- Move to an addon
- Use a much simpler synchronisation mechanism
2016-09-11 20:00:34 +12:00
Aldo Cortesi
6427176cf1 console: fix/improve server replay
- Fix "S" shortcut in list view
- Consolidate replay from file in global R shortcut
- Fix help
2016-09-11 15:37:11 +12:00
Aldo Cortesi
6b9221ffeb Add "run_once" support to the script addon, use it in mitmproxy
Fixes #1418
2016-09-11 13:22:01 +12:00
Aldo Cortesi
9b814ca067 options.replay_ignore* -> options.server_replay_ignore* 2016-09-10 10:21:52 +12:00
Aldo Cortesi
8677e91074 options.nopop -> options.server_replay_nopop 2016-09-10 10:09:07 +12:00
Aldo Cortesi
5ebe8c1bc8 options.rheaders -> options.server_replay_use_headers 2016-09-10 10:09:07 +12:00
Aldo Cortesi
b0213a2c0e options.kill -> options.replay_kill_extra 2016-09-10 10:09:07 +12:00
Aldo Cortesi
4ff8a72521 Roll out synchronisation for mitmproxy tests
This extends some of the work I did for pathod and netlib to the mitmproxy test
suite. It also fixes what may be a leak in replays.

Failing on connection leak is disabled on Windows for the moment.

Fixes #1535
2016-09-10 09:18:11 +12:00
arjun23496
2e1265f75e Changed filter to match replacement for DOTALL 2016-09-09 10:46:16 +05:30
arjun23496
f6ed06bf16 Convert to flags=value for future compatibility 2016-09-09 10:39:28 +05:30
arjun23496
79bbc41cb4 Fixes #1471 - Change .* to match entire body 2016-09-09 10:39:28 +05:30
Aldo Cortesi
c1bb582129 Fix interactive server replay in mitmproxy console 2016-09-09 11:15:07 +12:00
Aldo Cortesi
715e47e3d4 Extend addons.Addons with a get method that retrieves an addon by name 2016-09-09 10:31:34 +12:00
Aldo Cortesi
d4f291a8ad Fix immediate server replay-related crash in mitmproxy 2016-09-09 10:03:36 +12:00
Aldo Cortesi
6c970cfd4c Fix byte/string comparison error in server playback 2016-09-07 12:11:10 +12:00
Aldo Cortesi
9abdd3a8d9 Move server playback in to an addon
- Move server playback into an addon
- Implement a better sync strategy to decide when to exit if keepserving is
off. We now wait for the final flow played back to no longer be live.
- Leave interactive server playback in mitmproxy console broken for now - there
are broader addon-related changes that need to be made for that, and this patch
is already big.

Fixes #1229
2016-09-06 23:48:02 +12:00
smill
2ecd89fc51 Made it possible to modify the server_conn.connection attribute,
using the serverconnect stub.
2016-09-05 10:49:39 +00:00
smill
fbfedbdc8f Improved error-handling / supplemented documention. 2016-09-04 01:30:27 +00:00
Thomas Kriechbaumer
3da9e37d9e http2: improve connection lost 2016-09-03 16:56:21 +02:00
smill
377921fa99 Introduced some minor improvements to the shim loader. 2016-09-03 13:34:17 +00:00
smill
a6e0c7e8f0 Introduced the capability to spoof the source address
of outgoing sessions + an accompanying shim loader.
2016-09-03 12:22:09 +00:00
Thomas Kriechbaumer
e273a29a8c http2: improve kill and cleanup threads 2016-09-03 13:46:54 +02:00
Thomas Kriechbaumer
ea2a51d3be http2: fixes 2016-09-03 11:50:37 +02:00
Thomas Kriechbaumer
5dda9505b6 http2: improve framereader 2016-09-03 10:00:31 +02:00
Thomas Kriechbaumer
043180a8fa http2: improve closed connection handling 2016-09-03 10:00:31 +02:00
Thomas Kriechbaumer
9b5acc19e2 http2: improve zombie exception handling 2016-09-03 10:00:31 +02:00
Thomas Kriechbaumer
0badb3ec91 cleanup 2016-09-03 10:00:31 +02:00
Thomas Kriechbaumer
cd3d30633f websockets: update protocol detection 2016-09-01 09:57:35 +02:00
Thomas Kriechbaumer
e5b0dae7e9 add websockets support to mitmproxy 2016-09-01 09:57:18 +02:00
Aldo Cortesi
afe34e8b28 Improve the way we handle upstream errors
- Don't log a traceback for either HTTP or HTTPS DNS resolution or TCP
connection errors. These are "ordinary" errors, not mitmproxy issues.
- Ensure that the error handler is correctly called for SSL-related protocol
errors.
2016-09-01 12:32:09 +12:00
Thomas Kriechbaumer
6afbfc8526 Merge pull request #1493 from dufferzafar/long-urls
Truncate URLs in console
2016-08-26 16:44:44 +02:00
Thomas Kriechbaumer
bee7d368dd refactor http 2016-08-24 09:19:35 +02:00
Maximilian Hils
8926becf92 fix #1504 2016-08-23 23:25:27 -07:00
Maximilian Hils
f27028f58e introduce Response.make for simple response creation 2016-08-23 00:17:06 -07:00
Shadab Zafar
2e48f9c345 Show full URL in flowview 2016-08-23 12:44:39 +05:30
Shadab Zafar
7b5d5d3a54 Use unicode elipsis & make extra params a part of dict 2016-08-23 12:43:45 +05:30
Maximilian Hils
798ce96bd0 remove redundant property 2016-08-22 21:01:24 -07:00
Maximilian Hils
53ccbaf4f5 Merge pull request #1489 from mitmproxy/web_refactor
Web refactor
2016-08-22 20:52:03 -07:00
Shadab Zafar
41e4526a33 Use terminal width rather than a constant 2016-08-20 16:01:01 +05:30
Shadab Zafar
22283dd373 Truncate URLs in console 2016-08-20 16:00:50 +05:30
Clemens
9a86750e9d add static files 2016-08-18 18:48:18 +02:00
Shadab Zafar
ed88bcad72 Better status message on mouse drag 2016-08-18 00:24:52 +05:30
Thomas Kriechbaumer
516e64a8fa fix #1476 2016-08-16 10:40:46 +02:00
Thomas Kriechbaumer
bfe22e739c Merge pull request #1481 from Kriechi/http2-simplify-zombies
http2: simplify zombie detection
2016-08-16 10:10:39 +02:00
Thomas Kriechbaumer
8ade51d4b4 fix style 2016-08-16 10:09:05 +02:00
Thomas Kriechbaumer
17c65e46cb Merge pull request #1480 from mhils/reverse-proxy-auth
Add basic auth support for reverse proxy mode
2016-08-16 10:07:59 +02:00
Thomas Kriechbaumer
8f4baf42ea http2: cleanup 2016-08-14 13:06:33 +02:00
Thomas Kriechbaumer
0cc695407d http2: simplify zombie detection 2016-08-14 12:43:56 +02:00
Thomas Kriechbaumer
65677bdd28 style fixes 2016-08-14 12:43:18 +02:00
Maximilian Hils
a9401472cd add basic auth support for reverse proxy mode 2016-08-13 11:04:53 -07:00
Maximilian Hils
b39c6e0883 Merge pull request #1441 from mitmproxy/integrate_mitmproxy_contentviews
Integrate mitmproxy contentviews
2016-08-13 10:27:53 -07:00
Thomas Kriechbaumer
0c3f2a3806 fix #1430 2016-08-13 16:56:05 +02:00
Maximilian Hils
5a22496ee8 clean up code, improve DummyReply 2016-08-09 22:29:07 -07:00
Maximilian Hils
818840f553 finalize Reply semantics, fix tests 2016-08-09 20:26:24 -07:00
Maximilian Hils
f719644aa1 make Reply.state readonly 2016-08-09 17:23:30 -07:00
Clemens
b27e456ce2 merge with master 2016-08-09 19:49:36 +02:00
Clemens
adfdcc9391 added hints from mhils 2016-08-09 08:40:24 +02:00
Maximilian Hils
0ee1b40c17 improve reply semantics 2016-08-08 19:20:06 -07:00
Maximilian Hils
a52a1df23c fix reply concurrency 2016-08-04 17:03:27 -07:00
Maximilian Hils
dcfa7027ae fix tests 2016-08-04 15:39:48 -07:00
Maximilian Hils
f89455fd07 minor improvements 2016-08-04 15:23:44 -07:00
Maximilian Hils
951885a5dd simplify contentview logic 2016-08-04 15:23:44 -07:00
Clemens
a8aa1f2d1c fix get contentview in mitmweb 2016-08-04 09:34:36 +02:00
Clemens
e036bc9304 integrate simplified contentviews 2016-08-03 12:17:19 +02:00
Maximilian Hils
4ff9dba7d2 fix #1465, fix ssl_insecure 2016-08-02 20:08:04 -07:00
Maximilian Hils
49ce50d5d0 Revert "Add missing ssl_insecure option"
This reverts commit 1d33d76bfd.
2016-08-02 19:08:20 -07:00
Shadab Zafar
1d33d76bfd Add missing ssl_insecure option 2016-08-02 15:58:40 +05:30
Clemens
bcc496527e replace get_content_view in dumper and flowview 2016-08-01 15:21:00 +02:00
Manish Kumar
8701705504 integer division for python 3 compatibility 2016-08-01 15:37:26 +05:30
Maximilian Hils
7ea9726e5d Merge pull request #1453 from dufferzafar/limit-to-filter
Rename "Limit" feature to "Filter View"
2016-07-31 23:13:31 -07:00
Aldo Cortesi
ca0eab0f05 Merge pull request #1447 from mitmproxy/secure-by-default
Verify upstream certificates by default
2016-08-01 14:44:16 +12:00
Shadab Zafar
10ad56c853 Rename "Limit" feature to "Filter View" 2016-07-31 16:54:09 +05:30
Maximilian Hils
f008bdf590 Merge pull request #1451 from YanchWare/master
Integrated encode/decoder for brotli
2016-07-30 15:56:15 -07:00
Angelo Agatino Nicolosi
6792ec4058 Integrated encode/decoder for brotli 2016-07-30 14:43:53 +02:00
Vincent Haupert
07f77f0866 Substitute tilde with user's home.
When downloding the mitmproxy certificate using mitm.it, '~' currently
is not expanded causing a FileNotFoundException. This patch uses
expanduser() to replace the initial tilde with the user's home.
2016-07-30 12:49:00 +02:00
Vincent Haupert
73b7da1a03 Fix platform import on Linux using python3
Using python3, sys.platform returns "linux" instead of "linux2" using
python2. This patch accepts "linux" as well as "linux2".
2016-07-30 12:42:33 +02:00
Clemens
cb7da1ee44 moved getlines to contentviews 2016-07-29 15:37:41 +02:00
Clemens
a56c2ca731 combine clientside and serverside contentviews 2016-07-29 09:45:15 +02:00
Maximilian Hils
e800f321af Merge pull request #1436 from dufferzafar/jsbeautifier
Use jsbeautifier from pip
2016-07-28 15:37:06 -07:00
Clemens
ad5bebeda0 mitmproxy.contentviews added 2016-07-28 17:10:06 +02:00
dufferzafar
1cffa5f46b Use replace while decoding 2016-07-28 07:48:10 -07:00
Maximilian Hils
8b325fd65a improve invalid certificate ux 2016-07-27 21:01:28 -07:00
Maximilian Hils
83102b853f minor fixes 2016-07-27 19:38:36 -07:00
Sachin Kelkar
17fdb841f0 verify upstream certificates by default (#1111)
squashed and merged by @mhils
2016-07-27 17:57:38 -07:00
Aldo Cortesi
3636ed7d41 Merge pull request #1446 from cortesi/state
console: add replace_view_state, fix statusbar issues
2016-07-28 11:18:20 +12:00
Aldo Cortesi
d6e4ef4ced console: add replace_view_state, fix statusbar issues
Fixes #1394
2016-07-28 11:01:32 +12:00
Aldo Cortesi
75ab006ca9 Merge pull request #1442 from cortesi/scripts
mitmdump: send script .done when terminating after flow read
2016-07-28 10:22:30 +12:00
Aldo Cortesi
297cf5d565 mitmdump: send script .done when terminating after flow read
Fixes #1439
2016-07-28 09:35:25 +12:00
Clemens Brunner
41383b866e add favicon to mitmweb (#1440) 2016-07-27 11:20:36 -07:00
dufferzafar
583827ad3f Use strutils.native before sending data to jsbeautifier 2016-07-27 04:34:51 -07:00
dufferzafar
821413349e Re-order imports etc. 2016-07-27 04:34:51 -07:00
dufferzafar
21e6ecb47d Remove jsbeautifier files 2016-07-27 04:34:51 -07:00
dufferzafar
303b6df447 Use jsbeautifier from pip 2016-07-27 04:33:16 -07:00
Clemens
2c3ddb0ecc add parameter to content requests 2016-07-27 10:21:06 +02:00
Clemens
d8a78d9f52 add contentviews to settings 2016-07-27 09:45:46 +02:00
Maximilian Hils
705d042629 fix #1432 2016-07-25 19:37:47 -07:00
Aldo Cortesi
38b43cc9f9 Merge pull request #1428 from dufferzafar/replay
Consolidate replay under R
2016-07-26 13:53:44 +12:00
Aldo Cortesi
db22e72103 Merge pull request #1427 from mhils/grideditor
Refactor GridEditor
2016-07-26 13:38:04 +12:00
Maximilian Hils
817b675c52 Merge branch 'flow_editing_v2' 2016-07-25 17:51:38 -07:00
Maximilian Hils
79ebcb046e Merge remote-tracking branch 'origin/master' into flow_editing_v2 2016-07-25 15:16:16 -07:00
Maximilian Hils
3254595584 minor fixes 2016-07-25 15:12:20 -07:00
Maximilian Hils
ffe6593361 make sure to escape errors printed to the console 2016-07-25 14:37:19 -07:00
Clemens
ca4541613c combine content with header updates 2016-07-25 14:34:00 +02:00
Clemens
61ef7ca91b added contentHash 2016-07-25 10:56:12 +02:00
Shadab Zafar
f164181f2e Consolidate replay under R 2016-07-25 10:19:34 +05:30
Maximilian Hils
2d985e964c py2: silence abc metaclass warnings 2016-07-24 21:17:41 -07:00
Maximilian Hils
480ae46b88 refactor grideditor for py3 compatibility 2016-07-24 21:17:41 -07:00
Maximilian Hils
c1bd4dabc8 Merge pull request #1425 from dufferzafar/clear-hotfix
Fix clearing of flows
2016-07-24 18:39:44 -07:00
Shadab Zafar
b99da24529 Fix clearing of flows
Fixes #1424
2016-07-25 07:08:03 +05:30
Maximilian Hils
ec6934d339 console: fix options signal 2016-07-24 11:15:28 -07:00
Maximilian Hils
e9eee5a6da Merge pull request #1423 from dufferzafar/fix-search
Fix console search on Python 3
2016-07-24 09:53:18 -07:00
Shadab Zafar
71b6b84f29 Fix console search on Python 3 2016-07-24 22:21:04 +05:30
Maximilian Hils
c5f3bb83f6 fix keyboard navigation 2016-07-24 09:43:29 -07:00
Maximilian Hils
4d042ec543 fix #1373, fix #1154 (#1420) 2016-07-23 18:48:54 -07:00
Maximilian Hils
a87d089561 Merge pull request #1380 from dufferzafar/marked-filter
Marked property and filter
2016-07-23 17:55:12 -07:00
Maximilian Hils
ea718df111 Merge pull request #1416 from mhils/issue-1396
fix #1396, fix #1205, fix #1374
2016-07-23 15:37:23 -07:00
Maximilian Hils
fa45722ed8 Merge pull request #1402 from mhils/console-fixes
minor fixes
2016-07-23 12:49:57 -07:00
Maximilian Hils
ca493ad7f3 fix #1396, fix #1205, fix #1374 2016-07-23 12:09:19 -07:00
Maximilian Hils
fcb906dc97 improve dumper addon text alignment (#1415) 2016-07-23 12:01:05 -07:00
Maximilian Hils
61de6fa1d6 fix test_view_urlencoded 2016-07-23 11:55:27 -07:00
Thomas Kriechbaumer
c58db1adf3 http2: fix kill (#1413) 2016-07-23 11:11:45 -07:00
Shadab Zafar
f7217b006b Remove save marked flows prompt 2016-07-23 13:19:59 +05:30
Shadab Zafar
d6deec60b0 Add marked attribute when converting flow to 0.18 2016-07-23 10:41:57 +05:30
Shadab Zafar
32ef73e6b4 Remove [Marked Flows] status indicator 2016-07-23 10:41:57 +05:30
Shadab Zafar
484dbd8a7b Keep focus on same flow when disabling marked view 2016-07-23 10:41:57 +05:30
Shadab Zafar
426a62299c Focus nearest matching flow if current flow is unmarked 2016-07-23 10:41:57 +05:30
Shadab Zafar
6135ec1196 Move match function to Flow 2016-07-23 10:41:57 +05:30
Shadab Zafar
4a3e9c0563 Keep focus on same flow when enabling marked view
...if it is marked.
2016-07-23 10:41:57 +05:30
Shadab Zafar
40b50e9398 Remove flow marking from ConsoleState 2016-07-23 10:41:57 +05:30
Shadab Zafar
500b61a811 Use marked property in ConsoleState.clear 2016-07-23 10:41:57 +05:30
Shadab Zafar
653ed4e342 Use ~marked filter while toggling marked view 2016-07-23 10:41:57 +05:30
Shadab Zafar
cc98b9c32f Add a marked filter 2016-07-23 10:41:57 +05:30
Shadab Zafar
6c05a0c908 Update unmark all flows "U" 2016-07-23 10:41:57 +05:30
Shadab Zafar
d99d61e8ef Update save_marked_flows to use the new attribute 2016-07-23 10:41:57 +05:30
Shadab Zafar
6fe36a5b7f Fix display of mark status [m] 2016-07-23 10:41:57 +05:30
Shadab Zafar
911c7a4f1b Update toggling of marked attribute on pressing "m" 2016-07-23 10:41:57 +05:30
Shadab Zafar
541d9db27a Add marked attribute to flow 2016-07-23 10:41:57 +05:30
Aldo Cortesi
afda175e1c Addon iface: .configure(options) -> .configure(options, updated) 2016-07-23 15:43:55 +12:00
Aldo Cortesi
9294d19f90 scripts: .start can now return an Addon instance 2016-07-23 11:29:13 +12:00
Aldo Cortesi
05caa0a03d script: tune auto reload
- Don't respond to directory changes
- Ignore hidden files

I've "solved" this as well as it can be done in modd, and getting good results
here just turns into a large pile of heuristics that don't work in all
circumstances. Also watchdog sucks.
2016-07-23 11:08:14 +12:00
Aldo Cortesi
51a8ba57f1 script: add a namespace adaptor to match Addons 2016-07-23 11:03:50 +12:00
Maximilian Hils
9b40e1072c minor fixes 2016-07-21 20:33:55 -07:00
Maximilian Hils
9f0889d541 Merge pull request #1399 from mhils/fix-cv-cache-invalidation
Fix content view cache invalidation
2016-07-21 20:10:06 -07:00
Maximilian Hils
798759d2b3 fix content view cache invalidation 2016-07-21 19:49:32 -07:00
Maximilian Hils
8a2c7bea8e py3: fix copy to clipboard 2016-07-21 19:44:20 -07:00
Maximilian Hils
b28954ea5f minor fixes 2016-07-21 18:32:47 -07:00
Maximilian Hils
2ce7166a45 improve console ux for duplication/creation 2016-07-21 18:32:25 -07:00
Maximilian Hils
0911f4908b fix #1391 2016-07-21 18:31:12 -07:00
Maximilian Hils
f5841c705c fix #1392 2016-07-21 18:30:48 -07:00
Maximilian Hils
bb1400777b fix #1390 2016-07-21 18:30:09 -07:00
Maximilian Hils
873f48f6ab display python version in console help 2016-07-21 17:08:21 -07:00
Maximilian Hils
6ffeaaebed Merge branch 'master' of https://github.com/mitmproxy/mitmproxy 2016-07-21 01:16:35 -07:00
Maximilian Hils
427fffbcb8 web: fix flow content update 2016-07-21 00:43:31 -07:00
Aldo Cortesi
e15cf968c2 console: nopop, rheaders into Options 2016-07-21 15:51:12 +12:00
Aldo Cortesi
33ffbc28ed console: share one ActionBar instance
This fixes an issues where popping a view off the stack caused stale ActionBar
contents to be displayed.
2016-07-21 15:41:43 +12:00
Maximilian Hils
8b2a5cad2d Merge remote-tracking branch 'origin/flow_editing' 2016-07-20 14:35:20 -07:00
Shadab Zafar
2b58e153b9 Fix hotkey kerfuffle
`z` (instead of `C`) to "clear flow list or eventlog"
`C` to "export flow to clipboard"
`E` to "export flow to file"
2016-07-20 14:44:20 +05:30
Shadab Zafar
a933b82064 Make necessary changes in flowview 2016-07-20 14:41:21 +05:30
Shadab Zafar
3321e7bef3 Refactor exporters 2016-07-20 10:03:00 +05:30
Shadab Zafar
c84d0bd10b Add a url exporter 2016-07-20 10:03:00 +05:30
Shadab Zafar
0d478e71ee Ask for scope when called from flowlist 2016-07-20 10:03:00 +05:30
Shadab Zafar
e3670f9d9b Integrate ask_copy_part into exporters
This introduces some duplication but that'll be refactored later.
2016-07-20 10:03:00 +05:30
Shadab Zafar
8f4d49e22a Remove raw_request exporter
This functionality will be handled by headers+content
2016-07-20 10:03:00 +05:30
Shadab Zafar
3ae28f1c31 s/part/key 2016-07-20 10:03:00 +05:30