aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libmproxy/console/__init__.py4
-rw-r--r--libmproxy/console/help.py1
-rw-r--r--libmproxy/console/options.py18
-rw-r--r--libmproxy/console/window.py8
4 files changed, 17 insertions, 14 deletions
diff --git a/libmproxy/console/__init__.py b/libmproxy/console/__init__.py
index 08659f32..2421aa6b 100644
--- a/libmproxy/console/__init__.py
+++ b/libmproxy/console/__init__.py
@@ -577,10 +577,6 @@ class ConsoleMaster(flow.FlowMaster):
self.load_script(command)
signals.update_settings.send(self)
- def edit_tcp_filter(self, tcp):
- patterns = (x[0] for x in tcp)
- self.set_tcp_filter(patterns)
-
def stop_client_playback_prompt(self, a):
if a != "n":
self.stop_client_playback()
diff --git a/libmproxy/console/help.py b/libmproxy/console/help.py
index 223d2e83..53296df9 100644
--- a/libmproxy/console/help.py
+++ b/libmproxy/console/help.py
@@ -43,7 +43,6 @@ class HelpView(urwid.ListBox):
("Q", "quit without confirm prompt"),
("S", "server replay"),
("t", "set sticky cookie expression"),
- ("T", "set tcp proxying pattern"),
("u", "set sticky auth expression"),
]
text.extend(
diff --git a/libmproxy/console/options.py b/libmproxy/console/options.py
index 2b03f388..bfe6a591 100644
--- a/libmproxy/console/options.py
+++ b/libmproxy/console/options.py
@@ -180,7 +180,9 @@ class Options(urwid.WidgetWrap):
),
Option(
"TCP Proxying",
- "T"
+ "T",
+ lambda: master.server.config.check_tcp,
+ self.tcp_proxy
),
Heading("Utility"),
@@ -243,6 +245,7 @@ class Options(urwid.WidgetWrap):
self.master.setheaders.clear()
self.master.replacehooks.clear()
self.master.set_ignore_filter([])
+ self.master.set_tcp_filter([])
self.master.scripts = []
signals.update_settings.send(self)
signals.status_message.send(
@@ -324,3 +327,16 @@ class Options(urwid.WidgetWrap):
def has_default_displaymode(self):
return self.master.state.default_body_view.name != "Auto"
+
+ def tcp_proxy(self):
+ def _set(tcp):
+ patterns = (x[0] for x in tcp)
+ self.master.set_tcp_filter(patterns)
+ signals.update_settings.send(self)
+ self.master.view_grideditor(
+ grideditor.HostPatternEditor(
+ self.master,
+ [[x] for x in self.master.get_tcp_filter()],
+ _set
+ )
+ )
diff --git a/libmproxy/console/window.py b/libmproxy/console/window.py
index bb811537..cdc57b17 100644
--- a/libmproxy/console/window.py
+++ b/libmproxy/console/window.py
@@ -33,14 +33,6 @@ class Window(urwid.Frame):
),
callback = self.master.stop_client_playback_prompt,
)
- elif k == "T":
- self.master.view_grideditor(
- grideditor.HostPatternEditor(
- self.master,
- [[x] for x in self.master.get_tcp_filter()],
- self.master.edit_tcp_filter
- )
- )
elif k == "i":
signals.status_prompt.send(
self,