mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-25 09:37:37 +00:00
Split mitmproxy and mitmdump - mitmdump is the non-interactive verison of mitmproxy.
This commit is contained in:
parent
6300a57212
commit
b91156723b
62
mitmdump
Executable file
62
mitmdump
Executable file
@ -0,0 +1,62 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
# Copyright (C) 2010 Aldo Cortesi
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import sys, os.path
|
||||
from libmproxy import proxy, controller, console, utils
|
||||
from optparse import OptionParser, OptionGroup
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
parser = OptionParser(
|
||||
usage = "%prog [options] output",
|
||||
version="%prog 0.1",
|
||||
)
|
||||
parser.add_option(
|
||||
"-c", "--cert", action="store",
|
||||
type = "str", dest="cert", default="~/.mitmproxy/cert.pem",
|
||||
help = "SSL certificate file."
|
||||
)
|
||||
parser.add_option(
|
||||
"-p", "--port", action="store",
|
||||
type = "int", dest="port", default=8080,
|
||||
help = "Port."
|
||||
)
|
||||
parser.add_option("-q", "--quiet",
|
||||
action="store_true", dest="quiet",
|
||||
help="Quiet.")
|
||||
parser.add_option("-v", "--verbose",
|
||||
action="count", dest="verbose", default=1,
|
||||
help="Increase verbosity. Can be passed multiple times.")
|
||||
options, args = parser.parse_args()
|
||||
|
||||
if options.quiet:
|
||||
options.verbose = 0
|
||||
|
||||
certpath = os.path.expanduser(options.cert)
|
||||
|
||||
if not os.path.exists(certpath):
|
||||
print >> sys.stderr, "Creating bogus certificate at %s"%options.cert
|
||||
utils.make_bogus_cert(certpath)
|
||||
|
||||
proxy.config = proxy.Config(
|
||||
certpath
|
||||
)
|
||||
server = proxy.ProxyServer(options.port)
|
||||
m = controller.DumpMaster(server, options.verbose)
|
||||
if options.verbose > 0:
|
||||
print >> sys.stderr, "Running on port %s"%options.port
|
||||
m.run()
|
23
mitmproxy
23
mitmproxy
@ -25,11 +25,6 @@ if __name__ == '__main__':
|
||||
usage = "%prog [options] output",
|
||||
version="%prog 0.1",
|
||||
)
|
||||
parser.add_option(
|
||||
"-d", "--dump", action="store_true",
|
||||
dest="dump", default=False,
|
||||
help = "Just dump data to screen."
|
||||
)
|
||||
parser.add_option(
|
||||
"-c", "--cert", action="store",
|
||||
type = "str", dest="cert", default="~/.mitmproxy/cert.pem",
|
||||
@ -40,21 +35,10 @@ if __name__ == '__main__':
|
||||
type = "int", dest="port", default=8080,
|
||||
help = "Port."
|
||||
)
|
||||
parser.add_option("-q", "--quiet",
|
||||
action="store_true", dest="quiet",
|
||||
help="Quiet.")
|
||||
parser.add_option(
|
||||
"-t", "--terminal-backround", action="store_true", dest="terminal_background",
|
||||
default=False, help="Uses the standard terminal background instead of setting an own. Useful for transparent terminals.")
|
||||
|
||||
parser.add_option("-v", "--verbose",
|
||||
action="count", dest="verbose", default=1,
|
||||
help="Increase verbosity. Can be passed multiple times.")
|
||||
options, args = parser.parse_args()
|
||||
|
||||
if options.quiet:
|
||||
options.verbose = 0
|
||||
|
||||
certpath = os.path.expanduser(options.cert)
|
||||
|
||||
if not os.path.exists(certpath):
|
||||
@ -65,10 +49,5 @@ if __name__ == '__main__':
|
||||
certpath
|
||||
)
|
||||
server = proxy.ProxyServer(options.port)
|
||||
if options.dump:
|
||||
m = controller.DumpMaster(server, options.verbose)
|
||||
else:
|
||||
m = console.ConsoleMaster(server, options)
|
||||
if options.verbose > 0:
|
||||
print >> sys.stderr, "Running on port %s"%options.port
|
||||
m = console.ConsoleMaster(server, options)
|
||||
m.run()
|
||||
|
2
setup.py
2
setup.py
@ -79,7 +79,7 @@ setup(
|
||||
url = "http://corte.si/software",
|
||||
packages = packages,
|
||||
package_data = package_data,
|
||||
scripts = ["mitmproxy"],
|
||||
scripts = ["mitmproxy", "mitmdump"],
|
||||
classifiers = [
|
||||
"Development Status :: 4 - Beta",
|
||||
"Programming Language :: Python",
|
||||
|
2
todo
2
todo
@ -6,10 +6,10 @@ Future:
|
||||
- On-the-fly generation of keys, signed with a CA
|
||||
- Pass-through fast-track for things that don't match filter?
|
||||
- Reading contents from file
|
||||
- Saving contents to file
|
||||
- Shortcut for viewing in pager
|
||||
- Serializing and de-serializing requests and responses.
|
||||
- Use real non-blocking input handling to minimize cpu load.
|
||||
- Upstream proxies.
|
||||
|
||||
|
||||
Bugs:
|
||||
|
Loading…
Reference in New Issue
Block a user