aboutsummaryrefslogtreecommitdiffstats
path: root/examples/change_upstream_proxy.py
diff options
context:
space:
mode:
authorJim Shaver <dcypherd@gmail.com>2015-06-23 21:48:05 -0500
committerJim Shaver <dcypherd@gmail.com>2015-06-23 21:48:05 -0500
commit080e4534253338c94e6d8c86cb3679ff15410f85 (patch)
tree6322fb822332b4135f0ff14de8c2d7137016f734 /examples/change_upstream_proxy.py
parentdb5c0b210b0133d7cd58124c727dbc24480e2568 (diff)
parent074d8d7c7463cdb1f0a90e165a4b3ada3554b4c2 (diff)
downloadmitmproxy-080e4534253338c94e6d8c86cb3679ff15410f85.tar.gz
mitmproxy-080e4534253338c94e6d8c86cb3679ff15410f85.tar.bz2
mitmproxy-080e4534253338c94e6d8c86cb3679ff15410f85.zip
Merge branch 'master' into hardfailvenv
Conflicts: dev
Diffstat (limited to 'examples/change_upstream_proxy.py')
-rw-r--r--examples/change_upstream_proxy.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/examples/change_upstream_proxy.py b/examples/change_upstream_proxy.py
index 74a43bd0..7782dd84 100644
--- a/examples/change_upstream_proxy.py
+++ b/examples/change_upstream_proxy.py
@@ -1,10 +1,13 @@
# This scripts demonstrates how mitmproxy can switch to a second/different upstream proxy
# in upstream proxy mode.
#
-# Usage: mitmdump -U http://default-upstream-proxy.local:8080/ -s "change_upstream_proxy.py host"
+# Usage: mitmdump -U http://default-upstream-proxy.local:8080/ -s
+# "change_upstream_proxy.py host"
from libmproxy.protocol.http import send_connect_request
alternative_upstream_proxy = ("localhost", 8082)
+
+
def should_redirect(flow):
return flow.request.host == "example.com"
@@ -15,7 +18,12 @@ def request(context, flow):
# If you want to change the target server, you should modify flow.request.host and flow.request.port
# flow.live.change_server should only be used by inline scripts to change the upstream proxy,
# unless you are sure that you know what you are doing.
- server_changed = flow.live.change_server(alternative_upstream_proxy, persistent_change=True)
+ server_changed = flow.live.change_server(
+ alternative_upstream_proxy,
+ persistent_change=True)
if flow.request.scheme == "https" and server_changed:
- send_connect_request(flow.live.c.server_conn, flow.request.host, flow.request.port)
+ send_connect_request(
+ flow.live.c.server_conn,
+ flow.request.host,
+ flow.request.port)
flow.live.c.establish_ssl(server=True)