mirror of
https://github.com/zhigang1992/mitmproxy.git
synced 2026-04-28 12:15:00 +08:00
Merge branch 'master' of ssh.github.com:mitmproxy/pathod
This commit is contained in:
@@ -1,3 +1,12 @@
|
||||
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
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import logging, pprint, cStringIO
|
||||
import logging
|
||||
import pprint
|
||||
import cStringIO
|
||||
from flask import Flask, jsonify, render_template, request, abort, make_response
|
||||
import version, language, utils
|
||||
from netlib import http_uastrings
|
||||
@@ -39,7 +41,12 @@ def make_app(noapi):
|
||||
@app.route('/')
|
||||
@app.route('/index.html')
|
||||
def index():
|
||||
return render("index.html", True, section="main")
|
||||
return render(
|
||||
"index.html",
|
||||
True,
|
||||
section="main",
|
||||
version=version.VERSION
|
||||
)
|
||||
|
||||
@app.route('/download')
|
||||
@app.route('/download.html')
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
<h2>source</h2>
|
||||
|
||||
<ul>
|
||||
<li>Current release: <a href="http://mitmproxy.org/download/pathod-0.9.2.tar.gz">pathod 0.9.2</a></li>
|
||||
<li>Current release: <a href="http://mitmproxy.org/download/pathod-{{version}}.tar.gz">pathod {{version}}</a></li>
|
||||
|
||||
<li>GitHub: <a href="http://github.com/mitmproxy/pathod">github.com/cortesi/pathod</a></li>
|
||||
</li>
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
IVERSION = (0, 11)
|
||||
IVERSION = (0, 11, 1)
|
||||
VERSION = ".".join(str(i) for i in IVERSION)
|
||||
MINORVERSION = ".".join(str(i) for i in IVERSION[:2])
|
||||
NAME = "pathod"
|
||||
NAMEVERSION = NAME + " " + VERSION
|
||||
NAMEVERSION = NAME + " " + VERSION
|
||||
|
||||
NEXT_MINORVERSION = list(IVERSION)
|
||||
NEXT_MINORVERSION[1] += 1
|
||||
NEXT_MINORVERSION = ".".join(str(i) for i in NEXT_MINORVERSION[:2])
|
||||
|
||||
7
setup.py
7
setup.py
@@ -35,16 +35,17 @@ setup(
|
||||
|
||||
packages=find_packages(),
|
||||
include_package_data=True,
|
||||
|
||||
entry_points={
|
||||
'console_scripts': [
|
||||
"pathod = libpathod.cmdline:go_pathod",
|
||||
"pathoc = libpathod.cmdline:go_pathoc"
|
||||
]
|
||||
},
|
||||
|
||||
install_requires=[
|
||||
'netlib>=%s' % version.MINORVERSION,
|
||||
"netlib>=%s, <%s" % (version.MINORVERSION, version.NEXT_MINORVERSION),
|
||||
# It's INSANE that we have to do this, but...
|
||||
# FIXME: Requirement to be removed at next release
|
||||
"pip>=1.5.6",
|
||||
"requests>=2.4.1",
|
||||
"Flask>=0.10.1"
|
||||
],
|
||||
|
||||
@@ -153,7 +153,7 @@ class CommonTests(tutils.DaemonTests):
|
||||
assert l["type"] == "error"
|
||||
assert "foo" in l["msg"]
|
||||
|
||||
def test_invalid_body(self):
|
||||
def test_invalid_content_length(self):
|
||||
tutils.raises(
|
||||
http.HttpError,
|
||||
self.pathoc,
|
||||
@@ -161,7 +161,7 @@ class CommonTests(tutils.DaemonTests):
|
||||
)
|
||||
l = self.d.last_log()
|
||||
assert l["type"] == "error"
|
||||
assert "Invalid" in l["msg"]
|
||||
assert "Content-Length unknown" in l["msg"]
|
||||
|
||||
def test_invalid_headers(self):
|
||||
tutils.raises(http.HttpError, self.pathoc, "get:/:h'\t'='foo'")
|
||||
|
||||
Reference in New Issue
Block a user