diff options
-rw-r--r-- | .landscape.yml | 4 | ||||
-rw-r--r-- | .travis.yml | 2 | ||||
-rw-r--r-- | CHANGELOG (renamed from mitmproxy/CHANGELOG) | 97 | ||||
-rw-r--r-- | CONTRIBUTING.md | 39 | ||||
-rw-r--r-- | MANIFEST.in | 4 | ||||
-rw-r--r-- | README.rst | 27 | ||||
-rw-r--r-- | docs/.gitignore (renamed from mitmproxy/docs/.gitignore) | 0 | ||||
-rw-r--r-- | docs/Makefile (renamed from mitmproxy/docs/Makefile) | 0 | ||||
-rw-r--r-- | docs/_templates/page.html (renamed from mitmproxy/docs/_templates/page.html) | 0 | ||||
-rw-r--r-- | docs/certinstall-webapp.png (renamed from mitmproxy/docs/certinstall-webapp.png) | bin | 61683 -> 61683 bytes | |||
-rw-r--r-- | docs/certinstall.rst (renamed from mitmproxy/docs/certinstall.rst) | 0 | ||||
-rw-r--r-- | docs/conf.py (renamed from mitmproxy/docs/conf.py) | 0 | ||||
-rw-r--r-- | docs/config.rst (renamed from mitmproxy/docs/config.rst) | 0 | ||||
-rw-r--r-- | docs/custom-routing.txt (renamed from mitmproxy/docs/custom-routing.txt) | 0 | ||||
-rw-r--r-- | docs/dev/addingviews.html (renamed from mitmproxy/docs/dev/addingviews.html) | 0 | ||||
-rw-r--r-- | docs/dev/architecture.rst (renamed from mitmproxy/docs/dev/architecture.rst) | 0 | ||||
-rw-r--r-- | docs/dev/exceptions.rst (renamed from mitmproxy/docs/dev/exceptions.rst) | 0 | ||||
-rw-r--r-- | docs/dev/models.rst (renamed from mitmproxy/docs/dev/models.rst) | 0 | ||||
-rw-r--r-- | docs/dev/protocols.rst (renamed from mitmproxy/docs/dev/protocols.rst) | 0 | ||||
-rw-r--r-- | docs/dev/proxy.rst (renamed from mitmproxy/docs/dev/proxy.rst) | 0 | ||||
-rw-r--r-- | docs/dev/sslkeylogfile.rst (renamed from mitmproxy/docs/dev/sslkeylogfile.rst) | 0 | ||||
-rw-r--r-- | docs/dev/testing.rst (renamed from mitmproxy/docs/dev/testing.rst) | 0 | ||||
-rw-r--r-- | docs/favicon.ico (renamed from mitmproxy/docs/favicon.ico) | bin | 5430 -> 5430 bytes | |||
-rw-r--r-- | docs/features/anticache.rst (renamed from mitmproxy/docs/features/anticache.rst) | 0 | ||||
-rw-r--r-- | docs/features/clientreplay.rst (renamed from mitmproxy/docs/features/clientreplay.rst) | 0 | ||||
-rw-r--r-- | docs/features/filters.rst (renamed from mitmproxy/docs/features/filters.rst) | 0 | ||||
-rw-r--r-- | docs/features/passthrough.rst (renamed from mitmproxy/docs/features/passthrough.rst) | 0 | ||||
-rw-r--r-- | docs/features/proxyauth.rst (renamed from mitmproxy/docs/features/proxyauth.rst) | 0 | ||||
-rw-r--r-- | docs/features/replacements.rst (renamed from mitmproxy/docs/features/replacements.rst) | 0 | ||||
-rw-r--r-- | docs/features/responsestreaming.rst (renamed from mitmproxy/docs/features/responsestreaming.rst) | 0 | ||||
-rw-r--r-- | docs/features/reverseproxy.rst (renamed from mitmproxy/docs/features/reverseproxy.rst) | 0 | ||||
-rw-r--r-- | docs/features/serverreplay.rst (renamed from mitmproxy/docs/features/serverreplay.rst) | 0 | ||||
-rw-r--r-- | docs/features/setheaders.rst (renamed from mitmproxy/docs/features/setheaders.rst) | 0 | ||||
-rw-r--r-- | docs/features/socksproxy.rst (renamed from mitmproxy/docs/features/socksproxy.rst) | 0 | ||||
-rw-r--r-- | docs/features/sticky.rst (renamed from mitmproxy/docs/features/sticky.rst) | 0 | ||||
-rw-r--r-- | docs/features/tcpproxy.rst (renamed from mitmproxy/docs/features/tcpproxy.rst) | 0 | ||||
-rw-r--r-- | docs/features/upstreamcerts.rst (renamed from mitmproxy/docs/features/upstreamcerts.rst) | 0 | ||||
-rw-r--r-- | docs/features/upstreamproxy.rst (renamed from mitmproxy/docs/features/upstreamproxy.rst) | 0 | ||||
-rw-r--r-- | docs/howmitmproxy.rst (renamed from mitmproxy/docs/howmitmproxy.rst) | 0 | ||||
-rw-r--r-- | docs/index.rst (renamed from mitmproxy/docs/index.rst) | 0 | ||||
-rw-r--r-- | docs/install.rst (renamed from mitmproxy/docs/install.rst) | 0 | ||||
-rw-r--r-- | docs/introduction.rst (renamed from mitmproxy/docs/introduction.rst) | 0 | ||||
-rw-r--r-- | docs/mitmdump.rst (renamed from mitmproxy/docs/mitmdump.rst) | 0 | ||||
-rw-r--r-- | docs/mitmproxy-docs.png (renamed from mitmproxy/docs/mitmproxy-docs.png) | bin | 21323 -> 21323 bytes | |||
-rw-r--r-- | docs/mitmproxy-long.png (renamed from mitmproxy/docs/mitmproxy-long.png) | bin | 123829 -> 123829 bytes | |||
-rw-r--r-- | docs/mitmproxy.rst (renamed from mitmproxy/docs/mitmproxy.rst) | 0 | ||||
-rw-r--r-- | docs/modes.rst (renamed from mitmproxy/docs/modes.rst) | 0 | ||||
-rw-r--r-- | docs/schematics/_explicit.graffle/data.plist (renamed from mitmproxy/docs/schematics/_explicit.graffle/data.plist) | 0 | ||||
-rw-r--r-- | docs/schematics/_explicit.graffle/image3.icns (renamed from mitmproxy/docs/schematics/_explicit.graffle/image3.icns) | bin | 97327 -> 97327 bytes | |||
-rw-r--r-- | docs/schematics/_explicit.graffle/image6.tiff (renamed from mitmproxy/docs/schematics/_explicit.graffle/image6.tiff) | bin | 5075704 -> 5075704 bytes | |||
-rw-r--r-- | docs/schematics/_explicit_https.graffle/data.plist (renamed from mitmproxy/docs/schematics/_explicit_https.graffle/data.plist) | 0 | ||||
-rw-r--r-- | docs/schematics/_explicit_https.graffle/image3.icns (renamed from mitmproxy/docs/schematics/_explicit_https.graffle/image3.icns) | bin | 97327 -> 97327 bytes | |||
-rw-r--r-- | docs/schematics/_explicit_https.graffle/image6.tiff (renamed from mitmproxy/docs/schematics/_explicit_https.graffle/image6.tiff) | bin | 5075704 -> 5075704 bytes | |||
-rw-r--r-- | docs/schematics/_transparent.graffle/data.plist (renamed from mitmproxy/docs/schematics/_transparent.graffle/data.plist) | 0 | ||||
-rw-r--r-- | docs/schematics/_transparent.graffle/image3.icns (renamed from mitmproxy/docs/schematics/_transparent.graffle/image3.icns) | bin | 97327 -> 97327 bytes | |||
-rw-r--r-- | docs/schematics/_transparent.graffle/image6.tiff (renamed from mitmproxy/docs/schematics/_transparent.graffle/image6.tiff) | bin | 5075704 -> 5075704 bytes | |||
-rw-r--r-- | docs/schematics/_transparent_https.graffle/data.plist (renamed from mitmproxy/docs/schematics/_transparent_https.graffle/data.plist) | 0 | ||||
-rw-r--r-- | docs/schematics/_transparent_https.graffle/image3.icns (renamed from mitmproxy/docs/schematics/_transparent_https.graffle/image3.icns) | bin | 97327 -> 97327 bytes | |||
-rw-r--r-- | docs/schematics/_transparent_https.graffle/image6.tiff (renamed from mitmproxy/docs/schematics/_transparent_https.graffle/image6.tiff) | bin | 5075704 -> 5075704 bytes | |||
-rw-r--r-- | docs/schematics/architecture.pdf (renamed from mitmproxy/docs/schematics/architecture.pdf) | bin | 182446 -> 182446 bytes | |||
-rw-r--r-- | docs/schematics/architecture.png (renamed from mitmproxy/docs/schematics/architecture.png) | bin | 87365 -> 87365 bytes | |||
-rw-r--r-- | docs/schematics/architecture.vsdx (renamed from mitmproxy/docs/schematics/architecture.vsdx) | bin | 60922 -> 60922 bytes | |||
-rw-r--r-- | docs/schematics/how-mitmproxy-works-explicit-https.png (renamed from mitmproxy/docs/schematics/how-mitmproxy-works-explicit-https.png) | bin | 78951 -> 78951 bytes | |||
-rw-r--r-- | docs/schematics/how-mitmproxy-works-explicit.png (renamed from mitmproxy/docs/schematics/how-mitmproxy-works-explicit.png) | bin | 65305 -> 65305 bytes | |||
-rw-r--r-- | docs/schematics/how-mitmproxy-works-transparent-https.png (renamed from mitmproxy/docs/schematics/how-mitmproxy-works-transparent-https.png) | bin | 79758 -> 79758 bytes | |||
-rw-r--r-- | docs/schematics/how-mitmproxy-works-transparent.png (renamed from mitmproxy/docs/schematics/how-mitmproxy-works-transparent.png) | bin | 69375 -> 69375 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-flowchart.png (renamed from mitmproxy/docs/schematics/proxy-modes-flowchart.png) | bin | 71622 -> 71622 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-regular.png (renamed from mitmproxy/docs/schematics/proxy-modes-regular.png) | bin | 18283 -> 18283 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-reverse.png (renamed from mitmproxy/docs/schematics/proxy-modes-reverse.png) | bin | 16719 -> 16719 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-transparent-1.png (renamed from mitmproxy/docs/schematics/proxy-modes-transparent-1.png) | bin | 14558 -> 14558 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-transparent-2.png (renamed from mitmproxy/docs/schematics/proxy-modes-transparent-2.png) | bin | 23375 -> 23375 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-transparent-3.png (renamed from mitmproxy/docs/schematics/proxy-modes-transparent-3.png) | bin | 23855 -> 23855 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-transparent-wrong.png (renamed from mitmproxy/docs/schematics/proxy-modes-transparent-wrong.png) | bin | 14719 -> 14719 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes-upstream.png (renamed from mitmproxy/docs/schematics/proxy-modes-upstream.png) | bin | 14781 -> 14781 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes.pdf (renamed from mitmproxy/docs/schematics/proxy-modes.pdf) | bin | 335485 -> 335485 bytes | |||
-rw-r--r-- | docs/schematics/proxy-modes.vsdx (renamed from mitmproxy/docs/schematics/proxy-modes.vsdx) | bin | 191464 -> 191464 bytes | |||
-rw-r--r-- | docs/screenshots/firefox3-import.jpg (renamed from mitmproxy/docs/screenshots/firefox3-import.jpg) | bin | 55496 -> 55496 bytes | |||
-rw-r--r-- | docs/screenshots/firefox3-trust.jpg (renamed from mitmproxy/docs/screenshots/firefox3-trust.jpg) | bin | 31495 -> 31495 bytes | |||
-rw-r--r-- | docs/screenshots/firefox3.jpg (renamed from mitmproxy/docs/screenshots/firefox3.jpg) | bin | 57366 -> 57366 bytes | |||
-rw-r--r-- | docs/screenshots/ios-gateway.png (renamed from mitmproxy/docs/screenshots/ios-gateway.png) | bin | 154469 -> 154469 bytes | |||
-rw-r--r-- | docs/screenshots/ios-installed.png (renamed from mitmproxy/docs/screenshots/ios-installed.png) | bin | 80251 -> 80251 bytes | |||
-rw-r--r-- | docs/screenshots/ios-manual.png (renamed from mitmproxy/docs/screenshots/ios-manual.png) | bin | 196431 -> 196431 bytes | |||
-rw-r--r-- | docs/screenshots/ios-profile.png (renamed from mitmproxy/docs/screenshots/ios-profile.png) | bin | 83364 -> 83364 bytes | |||
-rw-r--r-- | docs/screenshots/ios-reverse.png (renamed from mitmproxy/docs/screenshots/ios-reverse.png) | bin | 66150 -> 66150 bytes | |||
-rw-r--r-- | docs/screenshots/ios-warning.png (renamed from mitmproxy/docs/screenshots/ios-warning.png) | bin | 75604 -> 75604 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy-flowview.png (renamed from mitmproxy/docs/screenshots/mitmproxy-flowview.png) | bin | 315864 -> 315864 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy-intercept-filt.png (renamed from mitmproxy/docs/screenshots/mitmproxy-intercept-filt.png) | bin | 18332 -> 18332 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy-intercept-mid.png (renamed from mitmproxy/docs/screenshots/mitmproxy-intercept-mid.png) | bin | 19841 -> 19841 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy-intercept-options.png (renamed from mitmproxy/docs/screenshots/mitmproxy-intercept-options.png) | bin | 41281 -> 41281 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy-intercept-result.png (renamed from mitmproxy/docs/screenshots/mitmproxy-intercept-result.png) | bin | 22855 -> 22855 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy-kveditor-editmode.png (renamed from mitmproxy/docs/screenshots/mitmproxy-kveditor-editmode.png) | bin | 44528 -> 44528 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy-kveditor.png (renamed from mitmproxy/docs/screenshots/mitmproxy-kveditor.png) | bin | 44852 -> 44852 bytes | |||
-rw-r--r-- | docs/screenshots/mitmproxy.png (renamed from mitmproxy/docs/screenshots/mitmproxy.png) | bin | 152596 -> 152596 bytes | |||
-rw-r--r-- | docs/screenshots/osx-addcert-alwaystrust.png (renamed from mitmproxy/docs/screenshots/osx-addcert-alwaystrust.png) | bin | 47146 -> 47146 bytes | |||
-rw-r--r-- | docs/screenshots/win7-certstore-trustedroot.png (renamed from mitmproxy/docs/screenshots/win7-certstore-trustedroot.png) | bin | 39236 -> 39236 bytes | |||
-rw-r--r-- | docs/screenshots/win7-certstore.png (renamed from mitmproxy/docs/screenshots/win7-certstore.png) | bin | 37453 -> 37453 bytes | |||
-rw-r--r-- | docs/screenshots/win7-wizard.png (renamed from mitmproxy/docs/screenshots/win7-wizard.png) | bin | 66456 -> 66456 bytes | |||
-rw-r--r-- | docs/screenshots/winpythoninstaller.jpg (renamed from mitmproxy/docs/screenshots/winpythoninstaller.jpg) | bin | 46628 -> 46628 bytes | |||
-rw-r--r-- | docs/scripting/inlinescripts.rst (renamed from mitmproxy/docs/scripting/inlinescripts.rst) | 0 | ||||
-rw-r--r-- | docs/scripting/mitmproxy.rst (renamed from mitmproxy/docs/scripting/mitmproxy.rst) | 0 | ||||
-rw-r--r-- | docs/transparent.rst (renamed from mitmproxy/docs/transparent.rst) | 0 | ||||
-rw-r--r-- | docs/transparent/linux.rst (renamed from mitmproxy/docs/transparent/linux.rst) | 0 | ||||
-rw-r--r-- | docs/transparent/osx.rst (renamed from mitmproxy/docs/transparent/osx.rst) | 0 | ||||
-rw-r--r-- | docs/tutorials/30second.rst (renamed from mitmproxy/docs/tutorials/30second.rst) | 0 | ||||
-rw-r--r-- | docs/tutorials/gamecenter.rst (renamed from mitmproxy/docs/tutorials/gamecenter.rst) | 0 | ||||
-rw-r--r-- | docs/tutorials/leaderboard.png (renamed from mitmproxy/docs/tutorials/leaderboard.png) | bin | 448368 -> 448368 bytes | |||
-rw-r--r-- | docs/tutorials/one.png (renamed from mitmproxy/docs/tutorials/one.png) | bin | 141443 -> 141443 bytes | |||
-rw-r--r-- | docs/tutorials/supermega.png (renamed from mitmproxy/docs/tutorials/supermega.png) | bin | 92889 -> 92889 bytes | |||
-rw-r--r-- | docs/tutorials/transparent-dhcp.rst (renamed from mitmproxy/docs/tutorials/transparent-dhcp.rst) | 0 | ||||
-rw-r--r-- | docs/tutorials/transparent-dhcp/step1_proxy.png (renamed from mitmproxy/docs/tutorials/transparent-dhcp/step1_proxy.png) | bin | 246413 -> 246413 bytes | |||
-rw-r--r-- | docs/tutorials/transparent-dhcp/step1_vbox_eth0.png (renamed from mitmproxy/docs/tutorials/transparent-dhcp/step1_vbox_eth0.png) | bin | 28237 -> 28237 bytes | |||
-rw-r--r-- | docs/tutorials/transparent-dhcp/step1_vbox_eth1.png (renamed from mitmproxy/docs/tutorials/transparent-dhcp/step1_vbox_eth1.png) | bin | 28765 -> 28765 bytes | |||
-rw-r--r-- | docs/tutorials/transparent-dhcp/step2_proxied_vm.png (renamed from mitmproxy/docs/tutorials/transparent-dhcp/step2_proxied_vm.png) | bin | 36775 -> 36775 bytes | |||
-rw-r--r-- | examples/README (renamed from mitmproxy/examples/README) | 0 | ||||
-rw-r--r-- | examples/add_header.py (renamed from mitmproxy/examples/add_header.py) | 0 | ||||
-rw-r--r-- | examples/change_upstream_proxy.py (renamed from mitmproxy/examples/change_upstream_proxy.py) | 0 | ||||
-rw-r--r-- | examples/custom_contentviews.py (renamed from mitmproxy/examples/custom_contentviews.py) | 0 | ||||
-rw-r--r-- | examples/dns_spoofing.py (renamed from mitmproxy/examples/dns_spoofing.py) | 0 | ||||
-rw-r--r-- | examples/dup_and_replay.py (renamed from mitmproxy/examples/dup_and_replay.py) | 0 | ||||
-rw-r--r-- | examples/filt.py (renamed from mitmproxy/examples/filt.py) | 0 | ||||
-rw-r--r-- | examples/flowbasic (renamed from mitmproxy/examples/flowbasic) | 0 | ||||
-rw-r--r-- | examples/flowwriter.py (renamed from mitmproxy/examples/flowwriter.py) | 0 | ||||
-rw-r--r-- | examples/har_extractor.py (renamed from mitmproxy/examples/har_extractor.py) | 0 | ||||
-rw-r--r-- | examples/iframe_injector.py (renamed from mitmproxy/examples/iframe_injector.py) | 0 | ||||
-rw-r--r-- | examples/mitmproxywrapper.py (renamed from mitmproxy/examples/mitmproxywrapper.py) | 0 | ||||
-rw-r--r-- | examples/modify_form.py (renamed from mitmproxy/examples/modify_form.py) | 0 | ||||
-rw-r--r-- | examples/modify_querystring.py (renamed from mitmproxy/examples/modify_querystring.py) | 0 | ||||
-rw-r--r-- | examples/modify_response_body.py (renamed from mitmproxy/examples/modify_response_body.py) | 0 | ||||
-rw-r--r-- | examples/nonblocking.py (renamed from mitmproxy/examples/nonblocking.py) | 0 | ||||
-rw-r--r-- | examples/pathod/libpathod_pathoc.py (renamed from pathod/examples/libpathod_pathoc.py) | 0 | ||||
-rw-r--r-- | examples/pathod/test_context.py (renamed from pathod/examples/test_context.py) | 0 | ||||
-rw-r--r-- | examples/pathod/test_setup.py (renamed from pathod/examples/test_setup.py) | 0 | ||||
-rw-r--r-- | examples/pathod/test_setupall.py (renamed from pathod/examples/test_setupall.py) | 0 | ||||
-rw-r--r-- | examples/proxapp.py (renamed from mitmproxy/examples/proxapp.py) | 0 | ||||
-rw-r--r-- | examples/read_dumpfile (renamed from mitmproxy/examples/read_dumpfile) | 0 | ||||
-rw-r--r-- | examples/redirect_requests.py (renamed from mitmproxy/examples/redirect_requests.py) | 0 | ||||
-rw-r--r-- | examples/sslstrip.py (renamed from mitmproxy/examples/sslstrip.py) | 0 | ||||
-rw-r--r-- | examples/stickycookies (renamed from mitmproxy/examples/stickycookies) | 0 | ||||
-rw-r--r-- | examples/stream.py (renamed from mitmproxy/examples/stream.py) | 0 | ||||
-rw-r--r-- | examples/stream_modify.py (renamed from mitmproxy/examples/stream_modify.py) | 0 | ||||
-rw-r--r-- | examples/stub.py (renamed from mitmproxy/examples/stub.py) | 0 | ||||
-rw-r--r-- | examples/tcp_message.py (renamed from mitmproxy/examples/tcp_message.py) | 0 | ||||
-rw-r--r-- | examples/tls_passthrough.py (renamed from mitmproxy/examples/tls_passthrough.py) | 0 | ||||
-rw-r--r-- | examples/upsidedownternet.py (renamed from mitmproxy/examples/upsidedownternet.py) | 0 | ||||
-rw-r--r-- | issue_template.md | 28 | ||||
-rw-r--r-- | mitmproxy/MANIFEST.in | 2 | ||||
-rw-r--r-- | mitmproxy/mitmproxy/console/flowview.py | 7 | ||||
-rw-r--r-- | mitmproxy/mitmproxy/contentviews.py | 27 | ||||
-rw-r--r-- | mitmproxy/mitmproxy/protocol/http2.py | 15 | ||||
-rw-r--r-- | mitmproxy/setup.py | 2 | ||||
-rw-r--r-- | pathod/CHANGELOG | 83 | ||||
-rw-r--r-- | pathod/MANIFEST.in | 2 | ||||
-rw-r--r-- | release/.gitignore | 2 | ||||
-rwxr-xr-x[-rw-r--r--] | release/rtool.py | 2 | ||||
-rw-r--r-- | test/mitmproxy/fuzzing/.env | 10 | ||||
-rw-r--r-- | test/mitmproxy/fuzzing/straight_stream_patterns | 1 | ||||
-rw-r--r-- | test/mitmproxy/test_contentview.py | 21 | ||||
-rw-r--r-- | test/mitmproxy/test_examples.py | 2 |
158 files changed, 215 insertions, 162 deletions
diff --git a/.landscape.yml b/.landscape.yml index 1cf78412..d4f32733 100644 --- a/.landscape.yml +++ b/.landscape.yml @@ -1,6 +1,6 @@ ignore-paths: - - mitmproxy/docs - - mitmproxy/examples + - docs + - examples - mitmproxy/mitmproxy/contrib - mitmproxy/web max-line-length: 140 diff --git a/.travis.yml b/.travis.yml index 06b31773..5804b5c7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,7 +25,7 @@ matrix: env: SCOPE="netlib" NO_ALPN=1 - python: 2.7 env: DOCS=1 - script: 'cd mitmproxy/docs && make html' + script: 'cd docs && make html' allow_failures: - python: pypy diff --git a/mitmproxy/CHANGELOG b/CHANGELOG index b41b4a24..068b729d 100644 --- a/mitmproxy/CHANGELOG +++ b/CHANGELOG @@ -223,6 +223,19 @@ * Countless bugfixes and other small improvements + * pathod: Hugely improved SSL support, including dynamic generation of certificates + using the mitproxy cacert + +7 November 2014: pathod 0.11: + + * Hugely improved SSL support, including dynamic generation of certificates + using the mitproxy cacert + + * pathoc -S dumps information on the remote SSL certificate chain + + * Big improvements to fuzzing, including random spec selection and memoization to avoid repeating randomly generated patterns + + * Reflected patterns, allowing you to embed a pathod server response specification in a pathoc request, resolving both on client side. This makes fuzzing proxies and other intermediate systems much better. 28 January 2014: mitmproxy 0.10: @@ -264,6 +277,9 @@ * Many other small bugfixes and improvements. +25 August 2013: pathod 0.9.2: + + * Adapt to interface changes in netlib 16 June 2013: mitmproxy 0.9.1: @@ -322,6 +338,87 @@ * Proxy authentication to limit access to mitmproxy + * pathod: Proxy mode. You can now configure clients to use pathod as an + HTTP/S proxy. + + * pathoc: Proxy support, including using CONNECT to tunnel directly to + targets. + + * pathoc: client certificate support. + + * pathod: API improvements, bugfixes. + + +15 May 2013: pathod 0.9 (version synced with mitmproxy): + + * Pathod proxy mode. You can now configure clients to use pathod as an + HTTP/S proxy. + + * Pathoc proxy support, including using CONNECT to tunnel directly to + targets. + + * Pathoc client certificate support. + + * API improvements, bugfixes. + + +16 November 2012: pathod 0.3: + + A release focusing on shoring up our fuzzing capabilities, especially with + pathoc. + + * pathoc -q and -r options, output full request and response text. + + * pathod -q and -r options, add full request and response text to pathod's + log buffer. + + * pathoc and pathod -x option, makes -q and -r options log in hex dump + format. + + * pathoc -C option, specify response codes to ignore. + + * pathoc -T option, instructs pathoc to ignore timeouts. + + * pathoc -o option, a one-shot mode that exits after the first non-ignored + response. + + * pathoc and pathod -e option, which explains the resulting message by + expanding random and generated portions, and logging a reproducible + specification. + + * Streamline the specification langauge. HTTP response message is now + specified using the "r" mnemonic. + + * Add a "u" mnemonic for specifying User-Agent strings. Add a set of + standard user-agent strings accessible through shortcuts. + + * Major internal refactoring and cleanup. + + * Many bugfixes. + + +22 August 2012: pathod 0.2: + + * Add pathoc, a pathological HTTP client. + + * Add libpathod.test, a truss for using pathod in unit tests. + + * Add an injection operator to the specification language. + + * Allow Python escape sequences in value literals. + + * Allow execution of requests and responses from file, using the new + operator. + + * Add daemonization to Pathod, and make it more robust for public-facing use. + + * Let pathod pick an arbitrary open port if -p 0 is specified. + + * Move from Tornado to netlib, the network library written for mitmproxy. + + * Move the web application to Flask. + + * Massively expand the documentation. + 5 April 2012: mitmproxy 0.8: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index ae948d73..00000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,39 +0,0 @@ -# Contributing - -Thank you for your interest in contributing to mitmproxy! - -# Bug Reports - -Bug Reports are very welcome - please file them on the GitHub [issue tracker](https://github.com/mitmproxy/mitmproxy/issues). -You can use the following template to structure your report: - -``` -##### Steps to reproduce the problem: -1. -2. -3. - -##### What is the expected behavior? - - -##### What went wrong? - - -##### Any other comments? - - ---- -mitmproxy version: -Operating System: -``` - -# Feature Requests - -We're happy to hear what you'd like to see in mitmproxy. Please file feature requests on the GitHub [issue tracker](https://github.com/mitmproxy/mitmproxy/issues). - -# Patches - -We're always happy to accept patches. Please submit them in the form of pull requests to the main [mitmproxy repository](https://github.com/mitmproxy/mitmproxy/). -If you're working on something cool, please do not hesistate and get in touch! - -Instructions for setting up a development environment can be found in the [README](README.rst). diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 00000000..440a14ed --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,4 @@ +graft mitmproxy +graft pathod +graft netlib +recursive-exclude * *.pyc *.pyo *.swo *.swp *.map
\ No newline at end of file @@ -82,7 +82,7 @@ Please ensure that all patches are accompanied by matching changes in the test suite. The project tries to maintain 100% test coverage. -Docs +Documentation ---- The mitmproxy documentation is build using Sphinx_, which is installed automatically if you set up a development @@ -100,6 +100,30 @@ The last command invokes `sphinx-autobuild`_, which watches the Sphinx directory the documentation when a change is detected. +Contributing +---- + +Thank you for your interest in contributing to mitmproxy! + +* Bug Reports + +Bug Reports are very welcome - please file them on the GitHub issue_tracker_. +Please make sure to fill out the template and provide as much information as +possible. + +* Feature Requests + +We're happy to hear what you'd like to see in mitmproxy. Please file feature +requests on the GitHub issue_tracker_. + +* Patches + +We're always happy to accept patches. Please submit them in the form of pull +requests to the this repository. If you're working on something cool, please do +not hesitate and get in touch! + + + .. |mitmproxy_site| image:: https://shields.mitmproxy.org/api/https%3A%2F%2F-mitmproxy.org-blue.svg :target: https://mitmproxy.org/ :alt: mitmproxy.org @@ -143,3 +167,4 @@ the documentation when a change is detected. .. _.env: https://github.com/mitmproxy/mitmproxy/blob/master/.env .. _Sphinx: http://sphinx-doc.org/ .. _sphinx-autobuild: https://pypi.python.org/pypi/sphinx-autobuild +.. _issue_tracker: https://github.com/mitmproxy/mitmproxy/issues diff --git a/mitmproxy/docs/.gitignore b/docs/.gitignore index 69fa449d..69fa449d 100644 --- a/mitmproxy/docs/.gitignore +++ b/docs/.gitignore diff --git a/mitmproxy/docs/Makefile b/docs/Makefile index 74bcda53..74bcda53 100644 --- a/mitmproxy/docs/Makefile +++ b/docs/Makefile diff --git a/mitmproxy/docs/_templates/page.html b/docs/_templates/page.html index 8002396a..8002396a 100644 --- a/mitmproxy/docs/_templates/page.html +++ b/docs/_templates/page.html diff --git a/mitmproxy/docs/certinstall-webapp.png b/docs/certinstall-webapp.png Binary files differindex 10e795cd..10e795cd 100644 --- a/mitmproxy/docs/certinstall-webapp.png +++ b/docs/certinstall-webapp.png diff --git a/mitmproxy/docs/certinstall.rst b/docs/certinstall.rst index 5a8cce64..5a8cce64 100644 --- a/mitmproxy/docs/certinstall.rst +++ b/docs/certinstall.rst diff --git a/mitmproxy/docs/conf.py b/docs/conf.py index 01bcce1b..01bcce1b 100644 --- a/mitmproxy/docs/conf.py +++ b/docs/conf.py diff --git a/mitmproxy/docs/config.rst b/docs/config.rst index 634b8703..634b8703 100644 --- a/mitmproxy/docs/config.rst +++ b/docs/config.rst diff --git a/mitmproxy/docs/custom-routing.txt b/docs/custom-routing.txt index 2ba2281f..2ba2281f 100644 --- a/mitmproxy/docs/custom-routing.txt +++ b/docs/custom-routing.txt diff --git a/mitmproxy/docs/dev/addingviews.html b/docs/dev/addingviews.html index 12623a31..12623a31 100644 --- a/mitmproxy/docs/dev/addingviews.html +++ b/docs/dev/addingviews.html diff --git a/mitmproxy/docs/dev/architecture.rst b/docs/dev/architecture.rst index e7995141..e7995141 100644 --- a/mitmproxy/docs/dev/architecture.rst +++ b/docs/dev/architecture.rst diff --git a/mitmproxy/docs/dev/exceptions.rst b/docs/dev/exceptions.rst index e890476b..e890476b 100644 --- a/mitmproxy/docs/dev/exceptions.rst +++ b/docs/dev/exceptions.rst diff --git a/mitmproxy/docs/dev/models.rst b/docs/dev/models.rst index 7a949941..7a949941 100644 --- a/mitmproxy/docs/dev/models.rst +++ b/docs/dev/models.rst diff --git a/mitmproxy/docs/dev/protocols.rst b/docs/dev/protocols.rst index ceb5c2fd..ceb5c2fd 100644 --- a/mitmproxy/docs/dev/protocols.rst +++ b/docs/dev/protocols.rst diff --git a/mitmproxy/docs/dev/proxy.rst b/docs/dev/proxy.rst index 888fb946..888fb946 100644 --- a/mitmproxy/docs/dev/proxy.rst +++ b/docs/dev/proxy.rst diff --git a/mitmproxy/docs/dev/sslkeylogfile.rst b/docs/dev/sslkeylogfile.rst index 04b86cc4..04b86cc4 100644 --- a/mitmproxy/docs/dev/sslkeylogfile.rst +++ b/docs/dev/sslkeylogfile.rst diff --git a/mitmproxy/docs/dev/testing.rst b/docs/dev/testing.rst index e3b86bf3..e3b86bf3 100644 --- a/mitmproxy/docs/dev/testing.rst +++ b/docs/dev/testing.rst diff --git a/mitmproxy/docs/favicon.ico b/docs/favicon.ico Binary files differindex 3c3b891c..3c3b891c 100644 --- a/mitmproxy/docs/favicon.ico +++ b/docs/favicon.ico diff --git a/mitmproxy/docs/features/anticache.rst b/docs/features/anticache.rst index 65d22bab..65d22bab 100644 --- a/mitmproxy/docs/features/anticache.rst +++ b/docs/features/anticache.rst diff --git a/mitmproxy/docs/features/clientreplay.rst b/docs/features/clientreplay.rst index b0eb6792..b0eb6792 100644 --- a/mitmproxy/docs/features/clientreplay.rst +++ b/docs/features/clientreplay.rst diff --git a/mitmproxy/docs/features/filters.rst b/docs/features/filters.rst index 509b5d6b..509b5d6b 100644 --- a/mitmproxy/docs/features/filters.rst +++ b/docs/features/filters.rst diff --git a/mitmproxy/docs/features/passthrough.rst b/docs/features/passthrough.rst index b7b5df84..b7b5df84 100644 --- a/mitmproxy/docs/features/passthrough.rst +++ b/docs/features/passthrough.rst diff --git a/mitmproxy/docs/features/proxyauth.rst b/docs/features/proxyauth.rst index bfd32fbd..bfd32fbd 100644 --- a/mitmproxy/docs/features/proxyauth.rst +++ b/docs/features/proxyauth.rst diff --git a/mitmproxy/docs/features/replacements.rst b/docs/features/replacements.rst index 8f760866..8f760866 100644 --- a/mitmproxy/docs/features/replacements.rst +++ b/docs/features/replacements.rst diff --git a/mitmproxy/docs/features/responsestreaming.rst b/docs/features/responsestreaming.rst index 8975c1f8..8975c1f8 100644 --- a/mitmproxy/docs/features/responsestreaming.rst +++ b/docs/features/responsestreaming.rst diff --git a/mitmproxy/docs/features/reverseproxy.rst b/docs/features/reverseproxy.rst index 87065e73..87065e73 100644 --- a/mitmproxy/docs/features/reverseproxy.rst +++ b/docs/features/reverseproxy.rst diff --git a/mitmproxy/docs/features/serverreplay.rst b/docs/features/serverreplay.rst index 261a1bd6..261a1bd6 100644 --- a/mitmproxy/docs/features/serverreplay.rst +++ b/docs/features/serverreplay.rst diff --git a/mitmproxy/docs/features/setheaders.rst b/docs/features/setheaders.rst index cbc8b6a5..cbc8b6a5 100644 --- a/mitmproxy/docs/features/setheaders.rst +++ b/docs/features/setheaders.rst diff --git a/mitmproxy/docs/features/socksproxy.rst b/docs/features/socksproxy.rst index 76d4cda9..76d4cda9 100644 --- a/mitmproxy/docs/features/socksproxy.rst +++ b/docs/features/socksproxy.rst diff --git a/mitmproxy/docs/features/sticky.rst b/docs/features/sticky.rst index a79cbe8d..a79cbe8d 100644 --- a/mitmproxy/docs/features/sticky.rst +++ b/docs/features/sticky.rst diff --git a/mitmproxy/docs/features/tcpproxy.rst b/docs/features/tcpproxy.rst index fd0746a2..fd0746a2 100644 --- a/mitmproxy/docs/features/tcpproxy.rst +++ b/docs/features/tcpproxy.rst diff --git a/mitmproxy/docs/features/upstreamcerts.rst b/docs/features/upstreamcerts.rst index af2e2226..af2e2226 100644 --- a/mitmproxy/docs/features/upstreamcerts.rst +++ b/docs/features/upstreamcerts.rst diff --git a/mitmproxy/docs/features/upstreamproxy.rst b/docs/features/upstreamproxy.rst index e06833c2..e06833c2 100644 --- a/mitmproxy/docs/features/upstreamproxy.rst +++ b/docs/features/upstreamproxy.rst diff --git a/mitmproxy/docs/howmitmproxy.rst b/docs/howmitmproxy.rst index b0b187d3..b0b187d3 100644 --- a/mitmproxy/docs/howmitmproxy.rst +++ b/docs/howmitmproxy.rst diff --git a/mitmproxy/docs/index.rst b/docs/index.rst index 4bca07d1..4bca07d1 100644 --- a/mitmproxy/docs/index.rst +++ b/docs/index.rst diff --git a/mitmproxy/docs/install.rst b/docs/install.rst index 3300807b..3300807b 100644 --- a/mitmproxy/docs/install.rst +++ b/docs/install.rst diff --git a/mitmproxy/docs/introduction.rst b/docs/introduction.rst index 058f39f9..058f39f9 100644 --- a/mitmproxy/docs/introduction.rst +++ b/docs/introduction.rst diff --git a/mitmproxy/docs/mitmdump.rst b/docs/mitmdump.rst index d9b4a26b..d9b4a26b 100644 --- a/mitmproxy/docs/mitmdump.rst +++ b/docs/mitmdump.rst diff --git a/mitmproxy/docs/mitmproxy-docs.png b/docs/mitmproxy-docs.png Binary files differindex 273fb8db..273fb8db 100644 --- a/mitmproxy/docs/mitmproxy-docs.png +++ b/docs/mitmproxy-docs.png diff --git a/mitmproxy/docs/mitmproxy-long.png b/docs/mitmproxy-long.png Binary files differindex f9397d1e..f9397d1e 100644 --- a/mitmproxy/docs/mitmproxy-long.png +++ b/docs/mitmproxy-long.png diff --git a/mitmproxy/docs/mitmproxy.rst b/docs/mitmproxy.rst index fa3b57c7..fa3b57c7 100644 --- a/mitmproxy/docs/mitmproxy.rst +++ b/docs/mitmproxy.rst diff --git a/mitmproxy/docs/modes.rst b/docs/modes.rst index 2c87b2a3..2c87b2a3 100644 --- a/mitmproxy/docs/modes.rst +++ b/docs/modes.rst diff --git a/mitmproxy/docs/schematics/_explicit.graffle/data.plist b/docs/schematics/_explicit.graffle/data.plist index bc5ef104..bc5ef104 100644 --- a/mitmproxy/docs/schematics/_explicit.graffle/data.plist +++ b/docs/schematics/_explicit.graffle/data.plist diff --git a/mitmproxy/docs/schematics/_explicit.graffle/image3.icns b/docs/schematics/_explicit.graffle/image3.icns Binary files differindex 964df4b8..964df4b8 100644 --- a/mitmproxy/docs/schematics/_explicit.graffle/image3.icns +++ b/docs/schematics/_explicit.graffle/image3.icns diff --git a/mitmproxy/docs/schematics/_explicit.graffle/image6.tiff b/docs/schematics/_explicit.graffle/image6.tiff Binary files differindex bd6ed534..bd6ed534 100644 --- a/mitmproxy/docs/schematics/_explicit.graffle/image6.tiff +++ b/docs/schematics/_explicit.graffle/image6.tiff diff --git a/mitmproxy/docs/schematics/_explicit_https.graffle/data.plist b/docs/schematics/_explicit_https.graffle/data.plist index 306630a0..306630a0 100644 --- a/mitmproxy/docs/schematics/_explicit_https.graffle/data.plist +++ b/docs/schematics/_explicit_https.graffle/data.plist diff --git a/mitmproxy/docs/schematics/_explicit_https.graffle/image3.icns b/docs/schematics/_explicit_https.graffle/image3.icns Binary files differindex 964df4b8..964df4b8 100644 --- a/mitmproxy/docs/schematics/_explicit_https.graffle/image3.icns +++ b/docs/schematics/_explicit_https.graffle/image3.icns diff --git a/mitmproxy/docs/schematics/_explicit_https.graffle/image6.tiff b/docs/schematics/_explicit_https.graffle/image6.tiff Binary files differindex bd6ed534..bd6ed534 100644 --- a/mitmproxy/docs/schematics/_explicit_https.graffle/image6.tiff +++ b/docs/schematics/_explicit_https.graffle/image6.tiff diff --git a/mitmproxy/docs/schematics/_transparent.graffle/data.plist b/docs/schematics/_transparent.graffle/data.plist index 722b4a44..722b4a44 100644 --- a/mitmproxy/docs/schematics/_transparent.graffle/data.plist +++ b/docs/schematics/_transparent.graffle/data.plist diff --git a/mitmproxy/docs/schematics/_transparent.graffle/image3.icns b/docs/schematics/_transparent.graffle/image3.icns Binary files differindex 964df4b8..964df4b8 100644 --- a/mitmproxy/docs/schematics/_transparent.graffle/image3.icns +++ b/docs/schematics/_transparent.graffle/image3.icns diff --git a/mitmproxy/docs/schematics/_transparent.graffle/image6.tiff b/docs/schematics/_transparent.graffle/image6.tiff Binary files differindex bd6ed534..bd6ed534 100644 --- a/mitmproxy/docs/schematics/_transparent.graffle/image6.tiff +++ b/docs/schematics/_transparent.graffle/image6.tiff diff --git a/mitmproxy/docs/schematics/_transparent_https.graffle/data.plist b/docs/schematics/_transparent_https.graffle/data.plist index 9c1395d7..9c1395d7 100644 --- a/mitmproxy/docs/schematics/_transparent_https.graffle/data.plist +++ b/docs/schematics/_transparent_https.graffle/data.plist diff --git a/mitmproxy/docs/schematics/_transparent_https.graffle/image3.icns b/docs/schematics/_transparent_https.graffle/image3.icns Binary files differindex 964df4b8..964df4b8 100644 --- a/mitmproxy/docs/schematics/_transparent_https.graffle/image3.icns +++ b/docs/schematics/_transparent_https.graffle/image3.icns diff --git a/mitmproxy/docs/schematics/_transparent_https.graffle/image6.tiff b/docs/schematics/_transparent_https.graffle/image6.tiff Binary files differindex bd6ed534..bd6ed534 100644 --- a/mitmproxy/docs/schematics/_transparent_https.graffle/image6.tiff +++ b/docs/schematics/_transparent_https.graffle/image6.tiff diff --git a/mitmproxy/docs/schematics/architecture.pdf b/docs/schematics/architecture.pdf Binary files differindex 77f5ad58..77f5ad58 100644 --- a/mitmproxy/docs/schematics/architecture.pdf +++ b/docs/schematics/architecture.pdf diff --git a/mitmproxy/docs/schematics/architecture.png b/docs/schematics/architecture.png Binary files differindex 67d6c718..67d6c718 100644 --- a/mitmproxy/docs/schematics/architecture.png +++ b/docs/schematics/architecture.png diff --git a/mitmproxy/docs/schematics/architecture.vsdx b/docs/schematics/architecture.vsdx Binary files differindex c4ff13d2..c4ff13d2 100644 --- a/mitmproxy/docs/schematics/architecture.vsdx +++ b/docs/schematics/architecture.vsdx diff --git a/mitmproxy/docs/schematics/how-mitmproxy-works-explicit-https.png b/docs/schematics/how-mitmproxy-works-explicit-https.png Binary files differindex 1f1ca023..1f1ca023 100644 --- a/mitmproxy/docs/schematics/how-mitmproxy-works-explicit-https.png +++ b/docs/schematics/how-mitmproxy-works-explicit-https.png diff --git a/mitmproxy/docs/schematics/how-mitmproxy-works-explicit.png b/docs/schematics/how-mitmproxy-works-explicit.png Binary files differindex c9ba26a7..c9ba26a7 100644 --- a/mitmproxy/docs/schematics/how-mitmproxy-works-explicit.png +++ b/docs/schematics/how-mitmproxy-works-explicit.png diff --git a/mitmproxy/docs/schematics/how-mitmproxy-works-transparent-https.png b/docs/schematics/how-mitmproxy-works-transparent-https.png Binary files differindex 559cddd2..559cddd2 100644 --- a/mitmproxy/docs/schematics/how-mitmproxy-works-transparent-https.png +++ b/docs/schematics/how-mitmproxy-works-transparent-https.png diff --git a/mitmproxy/docs/schematics/how-mitmproxy-works-transparent.png b/docs/schematics/how-mitmproxy-works-transparent.png Binary files differindex 3994d681..3994d681 100644 --- a/mitmproxy/docs/schematics/how-mitmproxy-works-transparent.png +++ b/docs/schematics/how-mitmproxy-works-transparent.png diff --git a/mitmproxy/docs/schematics/proxy-modes-flowchart.png b/docs/schematics/proxy-modes-flowchart.png Binary files differindex e9568dac..e9568dac 100644 --- a/mitmproxy/docs/schematics/proxy-modes-flowchart.png +++ b/docs/schematics/proxy-modes-flowchart.png diff --git a/mitmproxy/docs/schematics/proxy-modes-regular.png b/docs/schematics/proxy-modes-regular.png Binary files differindex 95bada08..95bada08 100644 --- a/mitmproxy/docs/schematics/proxy-modes-regular.png +++ b/docs/schematics/proxy-modes-regular.png diff --git a/mitmproxy/docs/schematics/proxy-modes-reverse.png b/docs/schematics/proxy-modes-reverse.png Binary files differindex 071d3fc8..071d3fc8 100644 --- a/mitmproxy/docs/schematics/proxy-modes-reverse.png +++ b/docs/schematics/proxy-modes-reverse.png diff --git a/mitmproxy/docs/schematics/proxy-modes-transparent-1.png b/docs/schematics/proxy-modes-transparent-1.png Binary files differindex 002e0e76..002e0e76 100644 --- a/mitmproxy/docs/schematics/proxy-modes-transparent-1.png +++ b/docs/schematics/proxy-modes-transparent-1.png diff --git a/mitmproxy/docs/schematics/proxy-modes-transparent-2.png b/docs/schematics/proxy-modes-transparent-2.png Binary files differindex 41997b05..41997b05 100644 --- a/mitmproxy/docs/schematics/proxy-modes-transparent-2.png +++ b/docs/schematics/proxy-modes-transparent-2.png diff --git a/mitmproxy/docs/schematics/proxy-modes-transparent-3.png b/docs/schematics/proxy-modes-transparent-3.png Binary files differindex ee26cb4f..ee26cb4f 100644 --- a/mitmproxy/docs/schematics/proxy-modes-transparent-3.png +++ b/docs/schematics/proxy-modes-transparent-3.png diff --git a/mitmproxy/docs/schematics/proxy-modes-transparent-wrong.png b/docs/schematics/proxy-modes-transparent-wrong.png Binary files differindex ca501e93..ca501e93 100644 --- a/mitmproxy/docs/schematics/proxy-modes-transparent-wrong.png +++ b/docs/schematics/proxy-modes-transparent-wrong.png diff --git a/mitmproxy/docs/schematics/proxy-modes-upstream.png b/docs/schematics/proxy-modes-upstream.png Binary files differindex d40a6494..d40a6494 100644 --- a/mitmproxy/docs/schematics/proxy-modes-upstream.png +++ b/docs/schematics/proxy-modes-upstream.png diff --git a/mitmproxy/docs/schematics/proxy-modes.pdf b/docs/schematics/proxy-modes.pdf Binary files differindex f07ea05e..f07ea05e 100644 --- a/mitmproxy/docs/schematics/proxy-modes.pdf +++ b/docs/schematics/proxy-modes.pdf diff --git a/mitmproxy/docs/schematics/proxy-modes.vsdx b/docs/schematics/proxy-modes.vsdx Binary files differindex 0128a142..0128a142 100644 --- a/mitmproxy/docs/schematics/proxy-modes.vsdx +++ b/docs/schematics/proxy-modes.vsdx diff --git a/mitmproxy/docs/screenshots/firefox3-import.jpg b/docs/screenshots/firefox3-import.jpg Binary files differindex 47fcd672..47fcd672 100644 --- a/mitmproxy/docs/screenshots/firefox3-import.jpg +++ b/docs/screenshots/firefox3-import.jpg diff --git a/mitmproxy/docs/screenshots/firefox3-trust.jpg b/docs/screenshots/firefox3-trust.jpg Binary files differindex 50a2f341..50a2f341 100644 --- a/mitmproxy/docs/screenshots/firefox3-trust.jpg +++ b/docs/screenshots/firefox3-trust.jpg diff --git a/mitmproxy/docs/screenshots/firefox3.jpg b/docs/screenshots/firefox3.jpg Binary files differindex 6c4613b6..6c4613b6 100644 --- a/mitmproxy/docs/screenshots/firefox3.jpg +++ b/docs/screenshots/firefox3.jpg diff --git a/mitmproxy/docs/screenshots/ios-gateway.png b/docs/screenshots/ios-gateway.png Binary files differindex 2489cba3..2489cba3 100644 --- a/mitmproxy/docs/screenshots/ios-gateway.png +++ b/docs/screenshots/ios-gateway.png diff --git a/mitmproxy/docs/screenshots/ios-installed.png b/docs/screenshots/ios-installed.png Binary files differindex 2071e441..2071e441 100644 --- a/mitmproxy/docs/screenshots/ios-installed.png +++ b/docs/screenshots/ios-installed.png diff --git a/mitmproxy/docs/screenshots/ios-manual.png b/docs/screenshots/ios-manual.png Binary files differindex 3977acfe..3977acfe 100644 --- a/mitmproxy/docs/screenshots/ios-manual.png +++ b/docs/screenshots/ios-manual.png diff --git a/mitmproxy/docs/screenshots/ios-profile.png b/docs/screenshots/ios-profile.png Binary files differindex 5bcd5a0d..5bcd5a0d 100644 --- a/mitmproxy/docs/screenshots/ios-profile.png +++ b/docs/screenshots/ios-profile.png diff --git a/mitmproxy/docs/screenshots/ios-reverse.png b/docs/screenshots/ios-reverse.png Binary files differindex 6ab5b7c0..6ab5b7c0 100644 --- a/mitmproxy/docs/screenshots/ios-reverse.png +++ b/docs/screenshots/ios-reverse.png diff --git a/mitmproxy/docs/screenshots/ios-warning.png b/docs/screenshots/ios-warning.png Binary files differindex d882c514..d882c514 100644 --- a/mitmproxy/docs/screenshots/ios-warning.png +++ b/docs/screenshots/ios-warning.png diff --git a/mitmproxy/docs/screenshots/mitmproxy-flowview.png b/docs/screenshots/mitmproxy-flowview.png Binary files differindex 154963fe..154963fe 100644 --- a/mitmproxy/docs/screenshots/mitmproxy-flowview.png +++ b/docs/screenshots/mitmproxy-flowview.png diff --git a/mitmproxy/docs/screenshots/mitmproxy-intercept-filt.png b/docs/screenshots/mitmproxy-intercept-filt.png Binary files differindex 60556ee7..60556ee7 100644 --- a/mitmproxy/docs/screenshots/mitmproxy-intercept-filt.png +++ b/docs/screenshots/mitmproxy-intercept-filt.png diff --git a/mitmproxy/docs/screenshots/mitmproxy-intercept-mid.png b/docs/screenshots/mitmproxy-intercept-mid.png Binary files differindex d5b03922..d5b03922 100644 --- a/mitmproxy/docs/screenshots/mitmproxy-intercept-mid.png +++ b/docs/screenshots/mitmproxy-intercept-mid.png diff --git a/mitmproxy/docs/screenshots/mitmproxy-intercept-options.png b/docs/screenshots/mitmproxy-intercept-options.png Binary files differindex 8dc4ad2c..8dc4ad2c 100644 --- a/mitmproxy/docs/screenshots/mitmproxy-intercept-options.png +++ b/docs/screenshots/mitmproxy-intercept-options.png diff --git a/mitmproxy/docs/screenshots/mitmproxy-intercept-result.png b/docs/screenshots/mitmproxy-intercept-result.png Binary files differindex 7d9f5c94..7d9f5c94 100644 --- a/mitmproxy/docs/screenshots/mitmproxy-intercept-result.png +++ b/docs/screenshots/mitmproxy-intercept-result.png diff --git a/mitmproxy/docs/screenshots/mitmproxy-kveditor-editmode.png b/docs/screenshots/mitmproxy-kveditor-editmode.png Binary files differindex a8315ee5..a8315ee5 100644 --- a/mitmproxy/docs/screenshots/mitmproxy-kveditor-editmode.png +++ b/docs/screenshots/mitmproxy-kveditor-editmode.png diff --git a/mitmproxy/docs/screenshots/mitmproxy-kveditor.png b/docs/screenshots/mitmproxy-kveditor.png Binary files differindex 144b9701..144b9701 100644 --- a/mitmproxy/docs/screenshots/mitmproxy-kveditor.png +++ b/docs/screenshots/mitmproxy-kveditor.png diff --git a/mitmproxy/docs/screenshots/mitmproxy.png b/docs/screenshots/mitmproxy.png Binary files differindex 42a10e32..42a10e32 100644 --- a/mitmproxy/docs/screenshots/mitmproxy.png +++ b/docs/screenshots/mitmproxy.png diff --git a/mitmproxy/docs/screenshots/osx-addcert-alwaystrust.png b/docs/screenshots/osx-addcert-alwaystrust.png Binary files differindex 4c5cc704..4c5cc704 100644 --- a/mitmproxy/docs/screenshots/osx-addcert-alwaystrust.png +++ b/docs/screenshots/osx-addcert-alwaystrust.png diff --git a/mitmproxy/docs/screenshots/win7-certstore-trustedroot.png b/docs/screenshots/win7-certstore-trustedroot.png Binary files differindex e15a87f5..e15a87f5 100644 --- a/mitmproxy/docs/screenshots/win7-certstore-trustedroot.png +++ b/docs/screenshots/win7-certstore-trustedroot.png diff --git a/mitmproxy/docs/screenshots/win7-certstore.png b/docs/screenshots/win7-certstore.png Binary files differindex f8ce54bd..f8ce54bd 100644 --- a/mitmproxy/docs/screenshots/win7-certstore.png +++ b/docs/screenshots/win7-certstore.png diff --git a/mitmproxy/docs/screenshots/win7-wizard.png b/docs/screenshots/win7-wizard.png Binary files differindex eff6ad09..eff6ad09 100644 --- a/mitmproxy/docs/screenshots/win7-wizard.png +++ b/docs/screenshots/win7-wizard.png diff --git a/mitmproxy/docs/screenshots/winpythoninstaller.jpg b/docs/screenshots/winpythoninstaller.jpg Binary files differindex 0473c66a..0473c66a 100644 --- a/mitmproxy/docs/screenshots/winpythoninstaller.jpg +++ b/docs/screenshots/winpythoninstaller.jpg diff --git a/mitmproxy/docs/scripting/inlinescripts.rst b/docs/scripting/inlinescripts.rst index 89bff2c1..89bff2c1 100644 --- a/mitmproxy/docs/scripting/inlinescripts.rst +++ b/docs/scripting/inlinescripts.rst diff --git a/mitmproxy/docs/scripting/mitmproxy.rst b/docs/scripting/mitmproxy.rst index 1626eb5a..1626eb5a 100644 --- a/mitmproxy/docs/scripting/mitmproxy.rst +++ b/docs/scripting/mitmproxy.rst diff --git a/mitmproxy/docs/transparent.rst b/docs/transparent.rst index eb77c76c..eb77c76c 100644 --- a/mitmproxy/docs/transparent.rst +++ b/docs/transparent.rst diff --git a/mitmproxy/docs/transparent/linux.rst b/docs/transparent/linux.rst index ce79128c..ce79128c 100644 --- a/mitmproxy/docs/transparent/linux.rst +++ b/docs/transparent/linux.rst diff --git a/mitmproxy/docs/transparent/osx.rst b/docs/transparent/osx.rst index 1791105f..1791105f 100644 --- a/mitmproxy/docs/transparent/osx.rst +++ b/docs/transparent/osx.rst diff --git a/mitmproxy/docs/tutorials/30second.rst b/docs/tutorials/30second.rst index 4c8bf326..4c8bf326 100644 --- a/mitmproxy/docs/tutorials/30second.rst +++ b/docs/tutorials/30second.rst diff --git a/mitmproxy/docs/tutorials/gamecenter.rst b/docs/tutorials/gamecenter.rst index 9dce5df8..9dce5df8 100644 --- a/mitmproxy/docs/tutorials/gamecenter.rst +++ b/docs/tutorials/gamecenter.rst diff --git a/mitmproxy/docs/tutorials/leaderboard.png b/docs/tutorials/leaderboard.png Binary files differindex c1be8df5..c1be8df5 100644 --- a/mitmproxy/docs/tutorials/leaderboard.png +++ b/docs/tutorials/leaderboard.png diff --git a/mitmproxy/docs/tutorials/one.png b/docs/tutorials/one.png Binary files differindex 78a636cf..78a636cf 100644 --- a/mitmproxy/docs/tutorials/one.png +++ b/docs/tutorials/one.png diff --git a/mitmproxy/docs/tutorials/supermega.png b/docs/tutorials/supermega.png Binary files differindex d416f71f..d416f71f 100644 --- a/mitmproxy/docs/tutorials/supermega.png +++ b/docs/tutorials/supermega.png diff --git a/mitmproxy/docs/tutorials/transparent-dhcp.rst b/docs/tutorials/transparent-dhcp.rst index ce285b63..ce285b63 100644 --- a/mitmproxy/docs/tutorials/transparent-dhcp.rst +++ b/docs/tutorials/transparent-dhcp.rst diff --git a/mitmproxy/docs/tutorials/transparent-dhcp/step1_proxy.png b/docs/tutorials/transparent-dhcp/step1_proxy.png Binary files differindex a0c94484..a0c94484 100644 --- a/mitmproxy/docs/tutorials/transparent-dhcp/step1_proxy.png +++ b/docs/tutorials/transparent-dhcp/step1_proxy.png diff --git a/mitmproxy/docs/tutorials/transparent-dhcp/step1_vbox_eth0.png b/docs/tutorials/transparent-dhcp/step1_vbox_eth0.png Binary files differindex 4b7b4e9b..4b7b4e9b 100644 --- a/mitmproxy/docs/tutorials/transparent-dhcp/step1_vbox_eth0.png +++ b/docs/tutorials/transparent-dhcp/step1_vbox_eth0.png diff --git a/mitmproxy/docs/tutorials/transparent-dhcp/step1_vbox_eth1.png b/docs/tutorials/transparent-dhcp/step1_vbox_eth1.png Binary files differindex b994d4cb..b994d4cb 100644 --- a/mitmproxy/docs/tutorials/transparent-dhcp/step1_vbox_eth1.png +++ b/docs/tutorials/transparent-dhcp/step1_vbox_eth1.png diff --git a/mitmproxy/docs/tutorials/transparent-dhcp/step2_proxied_vm.png b/docs/tutorials/transparent-dhcp/step2_proxied_vm.png Binary files differindex 2046cc57..2046cc57 100644 --- a/mitmproxy/docs/tutorials/transparent-dhcp/step2_proxied_vm.png +++ b/docs/tutorials/transparent-dhcp/step2_proxied_vm.png diff --git a/mitmproxy/examples/README b/examples/README index cf5c4d7d..cf5c4d7d 100644 --- a/mitmproxy/examples/README +++ b/examples/README diff --git a/mitmproxy/examples/add_header.py b/examples/add_header.py index cf1b53cc..cf1b53cc 100644 --- a/mitmproxy/examples/add_header.py +++ b/examples/add_header.py diff --git a/mitmproxy/examples/change_upstream_proxy.py b/examples/change_upstream_proxy.py index 9c454897..9c454897 100644 --- a/mitmproxy/examples/change_upstream_proxy.py +++ b/examples/change_upstream_proxy.py diff --git a/mitmproxy/examples/custom_contentviews.py b/examples/custom_contentviews.py index 776ba99d..776ba99d 100644 --- a/mitmproxy/examples/custom_contentviews.py +++ b/examples/custom_contentviews.py diff --git a/mitmproxy/examples/dns_spoofing.py b/examples/dns_spoofing.py index 7eb79695..7eb79695 100644 --- a/mitmproxy/examples/dns_spoofing.py +++ b/examples/dns_spoofing.py diff --git a/mitmproxy/examples/dup_and_replay.py b/examples/dup_and_replay.py index 9ba91d3b..9ba91d3b 100644 --- a/mitmproxy/examples/dup_and_replay.py +++ b/examples/dup_and_replay.py diff --git a/mitmproxy/examples/filt.py b/examples/filt.py index f99b675c..f99b675c 100644 --- a/mitmproxy/examples/filt.py +++ b/examples/filt.py diff --git a/mitmproxy/examples/flowbasic b/examples/flowbasic index 4a87b86a..4a87b86a 100644 --- a/mitmproxy/examples/flowbasic +++ b/examples/flowbasic diff --git a/mitmproxy/examples/flowwriter.py b/examples/flowwriter.py index 8fb8cc60..8fb8cc60 100644 --- a/mitmproxy/examples/flowwriter.py +++ b/examples/flowwriter.py diff --git a/mitmproxy/examples/har_extractor.py b/examples/har_extractor.py index 4e905438..4e905438 100644 --- a/mitmproxy/examples/har_extractor.py +++ b/examples/har_extractor.py diff --git a/mitmproxy/examples/iframe_injector.py b/examples/iframe_injector.py index fc38b136..fc38b136 100644 --- a/mitmproxy/examples/iframe_injector.py +++ b/examples/iframe_injector.py diff --git a/mitmproxy/examples/mitmproxywrapper.py b/examples/mitmproxywrapper.py index 7ea10715..7ea10715 100644 --- a/mitmproxy/examples/mitmproxywrapper.py +++ b/examples/mitmproxywrapper.py diff --git a/mitmproxy/examples/modify_form.py b/examples/modify_form.py index 3e9d15c0..3e9d15c0 100644 --- a/mitmproxy/examples/modify_form.py +++ b/examples/modify_form.py diff --git a/mitmproxy/examples/modify_querystring.py b/examples/modify_querystring.py index 7f31a48f..7f31a48f 100644 --- a/mitmproxy/examples/modify_querystring.py +++ b/examples/modify_querystring.py diff --git a/mitmproxy/examples/modify_response_body.py b/examples/modify_response_body.py index 88f69e15..88f69e15 100644 --- a/mitmproxy/examples/modify_response_body.py +++ b/examples/modify_response_body.py diff --git a/mitmproxy/examples/nonblocking.py b/examples/nonblocking.py index 41674b2a..41674b2a 100644 --- a/mitmproxy/examples/nonblocking.py +++ b/examples/nonblocking.py diff --git a/pathod/examples/libpathod_pathoc.py b/examples/pathod/libpathod_pathoc.py index 587c0e4c..587c0e4c 100644 --- a/pathod/examples/libpathod_pathoc.py +++ b/examples/pathod/libpathod_pathoc.py diff --git a/pathod/examples/test_context.py b/examples/pathod/test_context.py index 8db4331f..8db4331f 100644 --- a/pathod/examples/test_context.py +++ b/examples/pathod/test_context.py diff --git a/pathod/examples/test_setup.py b/examples/pathod/test_setup.py index 5dbc456d..5dbc456d 100644 --- a/pathod/examples/test_setup.py +++ b/examples/pathod/test_setup.py diff --git a/pathod/examples/test_setupall.py b/examples/pathod/test_setupall.py index cb84b7b2..cb84b7b2 100644 --- a/pathod/examples/test_setupall.py +++ b/examples/pathod/test_setupall.py diff --git a/mitmproxy/examples/proxapp.py b/examples/proxapp.py index 4d8e7b58..4d8e7b58 100644 --- a/mitmproxy/examples/proxapp.py +++ b/examples/proxapp.py diff --git a/mitmproxy/examples/read_dumpfile b/examples/read_dumpfile index 56746bb8..56746bb8 100644 --- a/mitmproxy/examples/read_dumpfile +++ b/examples/read_dumpfile diff --git a/mitmproxy/examples/redirect_requests.py b/examples/redirect_requests.py index c0a0ccba..c0a0ccba 100644 --- a/mitmproxy/examples/redirect_requests.py +++ b/examples/redirect_requests.py diff --git a/mitmproxy/examples/sslstrip.py b/examples/sslstrip.py index 369427a2..369427a2 100644 --- a/mitmproxy/examples/sslstrip.py +++ b/examples/sslstrip.py diff --git a/mitmproxy/examples/stickycookies b/examples/stickycookies index 8f11de8d..8f11de8d 100644 --- a/mitmproxy/examples/stickycookies +++ b/examples/stickycookies diff --git a/mitmproxy/examples/stream.py b/examples/stream.py index 3adbe437..3adbe437 100644 --- a/mitmproxy/examples/stream.py +++ b/examples/stream.py diff --git a/mitmproxy/examples/stream_modify.py b/examples/stream_modify.py index aa395c03..aa395c03 100644 --- a/mitmproxy/examples/stream_modify.py +++ b/examples/stream_modify.py diff --git a/mitmproxy/examples/stub.py b/examples/stub.py index 516b71a5..516b71a5 100644 --- a/mitmproxy/examples/stub.py +++ b/examples/stub.py diff --git a/mitmproxy/examples/tcp_message.py b/examples/tcp_message.py index c63368e4..c63368e4 100644 --- a/mitmproxy/examples/tcp_message.py +++ b/examples/tcp_message.py diff --git a/mitmproxy/examples/tls_passthrough.py b/examples/tls_passthrough.py index 8c8fa4eb..8c8fa4eb 100644 --- a/mitmproxy/examples/tls_passthrough.py +++ b/examples/tls_passthrough.py diff --git a/mitmproxy/examples/upsidedownternet.py b/examples/upsidedownternet.py index b7489cb6..b7489cb6 100644 --- a/mitmproxy/examples/upsidedownternet.py +++ b/examples/upsidedownternet.py diff --git a/issue_template.md b/issue_template.md new file mode 100644 index 00000000..01b736be --- /dev/null +++ b/issue_template.md @@ -0,0 +1,28 @@ +##### Steps to reproduce the problem: +1. Launch mitmproxy +2. Press X +3. Click Y + +##### What is the expected behavior? + +It should display Z. + +##### What went wrong? + +It crashed with this error/trace: ... + +##### Any other comments? + +None. + +--- + +mitmproxy version: (e.g.: 0.16, git commit hash) + +mitmproxy installed from: (e.g.: pip, binary package, source) + +Operating System: (e.g.: Windows, OSX, Linux, with specific version) + +OpenSSL version: (e.g.: 1.0.2f, run `openssl version` in your shell) + +pyOpenSSL version: (e.g.: 0.15.1, run `import OpenSSL; print(OpenSSL.__version__)` in Python) diff --git a/mitmproxy/MANIFEST.in b/mitmproxy/MANIFEST.in deleted file mode 100644 index 54b57382..00000000 --- a/mitmproxy/MANIFEST.in +++ /dev/null @@ -1,2 +0,0 @@ -graft mitmproxy -recursive-exclude * *.pyc *.pyo *.swo *.swp *.map
\ No newline at end of file diff --git a/mitmproxy/mitmproxy/console/flowview.py b/mitmproxy/mitmproxy/console/flowview.py index d2b98b68..f74ab140 100644 --- a/mitmproxy/mitmproxy/console/flowview.py +++ b/mitmproxy/mitmproxy/console/flowview.py @@ -69,7 +69,7 @@ def _mkhelp(): ), ("M", "change default body display mode"), ("p", "previous flow"), - ("P", "copy response(content/headers) to clipboard"), + ("P", "copy request/response (content/headers) to clipboard"), ("r", "replay request"), ("V", "revert changes to request"), ("v", "view body in external viewer"), @@ -193,8 +193,11 @@ class FlowView(tabs.Tabs): def _get_content_view(self, viewmode, message, max_lines, _): try: + query = None + if isinstance(message, HTTPRequest): + query = message.query description, lines = contentviews.get_content_view( - viewmode, message.content, headers=message.headers + viewmode, message.content, headers=message.headers, query=query ) except ContentViewException: s = "Content viewer failed: \n" + traceback.format_exc() diff --git a/mitmproxy/mitmproxy/contentviews.py b/mitmproxy/mitmproxy/contentviews.py index c0652c18..5335b59c 100644 --- a/mitmproxy/mitmproxy/contentviews.py +++ b/mitmproxy/mitmproxy/contentviews.py @@ -8,7 +8,8 @@ in the future, e.g. to decode protobuf messages sent as WebSocket frames. Thus, the View API is very minimalistic. The only arguments are `data` and `**metadata`, where `data` is the actual content (as bytes). The contents on metadata depend on the protocol in -use. For HTTP, the message headers are passed as the ``headers`` keyword argument. +use. For HTTP, the message headers are passed as the ``headers`` keyword argument. For HTTP +requests, the query parameters are passed as the ``query`` keyword argument. """ from __future__ import (absolute_import, print_function, division) @@ -118,15 +119,19 @@ class ViewAuto(View): def __call__(self, data, **metadata): headers = metadata.get("headers", {}) ctype = headers.get("content-type") - if ctype: + if data and ctype: ct = parse_content_type(ctype) if ctype else None ct = "%s/%s" % (ct[0], ct[1]) if ct in content_types_map: return content_types_map[ct][0](data, **metadata) elif utils.isXML(data): return get("XML")(data, **metadata) - if utils.isMostlyBin(data): + if metadata.get("query"): + return get("Query")(data, **metadata) + if data and utils.isMostlyBin(data): return get("Hex")(data) + if not data: + return "No content", [] return get("Raw")(data) @@ -460,6 +465,19 @@ class ViewProtobuf(View): return "Protobuf", format_text(decoded) +class ViewQuery(View): + name = "Query" + prompt = ("query", "q") + content_types = [] + + def __call__(self, data, **metadata): + query = metadata.get("query") + if query: + return "Query", format_dict(query) + else: + return "Query", format_text("") + + class ViewWBXML(View): name = "WBXML" prompt = ("wbxml", "w") @@ -541,6 +559,7 @@ add(ViewCSS()) add(ViewURLEncoded()) add(ViewMultipart()) add(ViewImage()) +add(ViewQuery()) if pyamf: add(ViewAMF()) @@ -577,8 +596,6 @@ def get_content_view(viewmode, data, **metadata): Raises: ContentViewException, if the content view threw an error. """ - if not data: - return "No content", [] msg = [] headers = metadata.get("headers", {}) diff --git a/mitmproxy/mitmproxy/protocol/http2.py b/mitmproxy/mitmproxy/protocol/http2.py index c121637c..3fbc500a 100644 --- a/mitmproxy/mitmproxy/protocol/http2.py +++ b/mitmproxy/mitmproxy/protocol/http2.py @@ -9,8 +9,6 @@ from netlib.exceptions import HttpException from netlib.http import Headers from netlib.utils import http2_read_raw_frame -import hyperframe -import h2 from h2.connection import H2Connection from h2.events import * @@ -232,19 +230,6 @@ class Http2Layer(Layer): stream.zombie = time.time() return - frame, _ = hyperframe.frame.Frame.parse_frame_header(raw_frame[:9]) - - if is_server: - list = self.server_reset_streams - else: - list = self.client_reset_streams - if frame.stream_id in list: - # this frame belongs to a reset stream - just ignore it - if isinstance(frame, hyperframe.frame.HeadersFrame) or isinstance(frame, hyperframe.frame.ContinuationFrame): - # we need to keep the hpack-decoder happy too - source_conn.h2.decoder.decode(raw_frame[9:]) - continue - events = source_conn.h2.receive_data(raw_frame) source_conn.send(source_conn.h2.data_to_send()) diff --git a/mitmproxy/setup.py b/mitmproxy/setup.py index 600702d9..5f8c6d42 100644 --- a/mitmproxy/setup.py +++ b/mitmproxy/setup.py @@ -54,7 +54,7 @@ setup( # It is not considered best practice to use install_requires to pin dependencies to specific versions. install_requires=[ "netlib=={}".format(version.VERSION), - "h2>=2.1.0, <2.2", + "h2>=2.1.2, <3.0", "tornado>=4.3, <4.4", "configargparse>=0.10, <0.11", "pyperclip>=1.5.22, <1.6", diff --git a/pathod/CHANGELOG b/pathod/CHANGELOG deleted file mode 100644 index 2de445b4..00000000 --- a/pathod/CHANGELOG +++ /dev/null @@ -1,83 +0,0 @@ -7 November 2014: pathod 0.11: - - * Hugely improved SSL support, including dynamic generation of certificates - using the mitproxy cacert - * pathoc -S dumps information on the remote SSL certificate chain - * Big improvements to fuzzing, including random spec selection and memoization to avoid repeating randomly generated patterns - * Reflected patterns, allowing you to embed a pathod server response specification in a pathoc request, resolving both on client side. This makes fuzzing proxies and other intermediate systems much better. - - -25 August 2013: pathod 0.9.2: - - * Adapt to interface changes in netlib - - -15 May 2013: pathod 0.9 (version synced with mitmproxy): - - * Pathod proxy mode. You can now configure clients to use pathod as an - HTTP/S proxy. - - * Pathoc proxy support, including using CONNECT to tunnel directly to - targets. - - * Pathoc client certificate support. - - * API improvements, bugfixes. - - -16 November 2012: pathod 0.3: - - A release focusing on shoring up our fuzzing capabilities, especially with - pathoc. - - * pathoc -q and -r options, output full request and response text. - - * pathod -q and -r options, add full request and response text to pathod's - log buffer. - - * pathoc and pathod -x option, makes -q and -r options log in hex dump - format. - - * pathoc -C option, specify response codes to ignore. - - * pathoc -T option, instructs pathoc to ignore timeouts. - - * pathoc -o option, a one-shot mode that exits after the first non-ignored - response. - - * pathoc and pathod -e option, which explains the resulting message by - expanding random and generated portions, and logging a reproducible - specification. - - * Streamline the specification langauge. HTTP response message is now - specified using the "r" mnemonic. - - * Add a "u" mnemonic for specifying User-Agent strings. Add a set of - standard user-agent strings accessible through shortcuts. - - * Major internal refactoring and cleanup. - - * Many bugfixes. - - -22 August 2012: pathod 0.2: - - * Add pathoc, a pathological HTTP client. - - * Add libpathod.test, a truss for using pathod in unit tests. - - * Add an injection operator to the specification language. - - * Allow Python escape sequences in value literals. - - * Allow execution of requests and responses from file, using the new + operator. - - * Add daemonization to Pathod, and make it more robust for public-facing use. - - * Let pathod pick an arbitrary open port if -p 0 is specified. - - * Move from Tornado to netlib, the network library written for mitmproxy. - - * Move the web application to Flask. - - * Massively expand the documentation. diff --git a/pathod/MANIFEST.in b/pathod/MANIFEST.in deleted file mode 100644 index a83fa08f..00000000 --- a/pathod/MANIFEST.in +++ /dev/null @@ -1,2 +0,0 @@ -graft pathod -recursive-exclude * *.pyc *.pyo *.swo *.swp *.map
\ No newline at end of file diff --git a/release/.gitignore b/release/.gitignore new file mode 100644 index 00000000..2247d5f9 --- /dev/null +++ b/release/.gitignore @@ -0,0 +1,2 @@ +/build +/dist diff --git a/release/rtool.py b/release/rtool.py index 2ebb3a1c..d01ee741 100644..100755 --- a/release/rtool.py +++ b/release/rtool.py @@ -250,7 +250,7 @@ def bdist(ctx, use_existing_wheels, pyinstaller_version): "--clean", "--workpath", PYINSTALLER_TEMP, "--distpath", PYINSTALLER_DIST, - # This is PyInstaller, so setting a + # This is PyInstaller, so setting a # different log level obviously breaks it :-) # "--log-level", "WARN", spec diff --git a/test/mitmproxy/fuzzing/.env b/test/mitmproxy/fuzzing/.env index 82ae6a8d..8923b8ae 100644 --- a/test/mitmproxy/fuzzing/.env +++ b/test/mitmproxy/fuzzing/.env @@ -1,6 +1,4 @@ - -MITMDUMP=../../mitmdump -PATHOD=../../../pathod/pathod -PATHOC=../../../pathod/pathoc -FUZZ_SETTINGS=-remTt 1 -n 0 - +MITMDUMP=mitmdump +PATHOD=pathod +PATHOC=pathoc +FUZZ_SETTINGS="-remTt 1 -n 0" diff --git a/test/mitmproxy/fuzzing/straight_stream_patterns b/test/mitmproxy/fuzzing/straight_stream_patterns index 93a066e6..235f2cc3 100644 --- a/test/mitmproxy/fuzzing/straight_stream_patterns +++ b/test/mitmproxy/fuzzing/straight_stream_patterns @@ -9,7 +9,6 @@ get:'http://localhost:9999/p/':s'200:b"foo":ir,"\n"' get:'http://localhost:9999/p/':s'200:b"foo":ir,"a"' get:'http://localhost:9999/p/':s'200:b"foo":ir,"9"' get:'http://localhost:9999/p/':s'200:b"foo":ir,":"' -get:'http://localhost:9999/p/':s"200:b'foo':ir,'\"'" get:'http://localhost:9999/p/':s'200:b"foo":ir,"-"' get:'http://localhost:9999/p/':s'200:b"foo":dr' diff --git a/test/mitmproxy/test_contentview.py b/test/mitmproxy/test_contentview.py index 7f1d735e..c00afa5f 100644 --- a/test/mitmproxy/test_contentview.py +++ b/test/mitmproxy/test_contentview.py @@ -1,5 +1,6 @@ from mitmproxy.exceptions import ContentViewException from netlib.http import Headers +from netlib.odict import ODict import netlib.utils from netlib import encoding @@ -45,6 +46,19 @@ class TestContentView: ) assert f[0].startswith("XML") + f = v( + "", + headers=Headers() + ) + assert f[0] == "No content" + + f = v( + "", + headers=Headers(), + query=ODict([("foo", "bar")]), + ) + assert f[0] == "Query" + def test_view_urlencoded(self): d = netlib.utils.urlencode([("one", "two"), ("three", "four")]) v = cv.ViewURLEncoded() @@ -158,6 +172,13 @@ Larry h = Headers(content_type="unparseable") assert not view(v, headers=h) + def test_view_query(self): + d = "" + v = cv.ViewQuery() + f = v(d, query=ODict([("foo", "bar")])) + assert f[0] == "Query" + assert [x for x in f[1]] == [[("header", "foo: "), ("text", "bar")]] + def test_get_content_view(self): r = cv.get_content_view( cv.get("Raw"), diff --git a/test/mitmproxy/test_examples.py b/test/mitmproxy/test_examples.py index 6920c8e9..54e6e753 100644 --- a/test/mitmproxy/test_examples.py +++ b/test/mitmproxy/test_examples.py @@ -5,7 +5,7 @@ from . import tservers def test_load_scripts(): - example_dir = utils.Data("mitmproxy").path("../examples") + example_dir = utils.Data("mitmproxy").path("../../examples") scripts = glob.glob("%s/*.py" % example_dir) tmaster = tservers.TestMaster(config.ProxyConfig()) |