From a05a70d8168a07c92b2a3ecbbb1958d85532efe3 Mon Sep 17 00:00:00 2001 From: Aldo Cortesi Date: Sat, 30 May 2015 12:03:28 +1200 Subject: Add coding style check, reformat. --- examples/mitmproxywrapper.py | 60 +++++++++++++++++++++++++++++++------------- 1 file changed, 42 insertions(+), 18 deletions(-) (limited to 'examples/mitmproxywrapper.py') diff --git a/examples/mitmproxywrapper.py b/examples/mitmproxywrapper.py index 2f3750e9..239642d7 100755 --- a/examples/mitmproxywrapper.py +++ b/examples/mitmproxywrapper.py @@ -14,23 +14,29 @@ import contextlib import os import sys + class Wrapper(object): - + def __init__(self, port, extra_arguments=None): self.port = port self.extra_arguments = extra_arguments def run_networksetup_command(self, *arguments): - return subprocess.check_output(['sudo', 'networksetup'] + list(arguments)) + return subprocess.check_output( + ['sudo', 'networksetup'] + list(arguments)) def proxy_state_for_service(self, service): - state = self.run_networksetup_command('-getwebproxy', service).splitlines() + state = self.run_networksetup_command( + '-getwebproxy', + service).splitlines() return dict([re.findall(r'([^:]+): (.*)', line)[0] for line in state]) def enable_proxy_for_service(self, service): print 'Enabling proxy on {}...'.format(service) for subcommand in ['-setwebproxy', '-setsecurewebproxy']: - self.run_networksetup_command(subcommand, service, '127.0.0.1', str(self.port)) + self.run_networksetup_command( + subcommand, service, '127.0.0.1', str( + self.port)) def disable_proxy_for_service(self, service): print 'Disabling proxy on {}...'.format(service) @@ -39,14 +45,20 @@ class Wrapper(object): def interface_name_to_service_name_map(self): order = self.run_networksetup_command('-listnetworkserviceorder') - mapping = re.findall(r'\(\d+\)\s(.*)$\n\(.*Device: (.+)\)$', order, re.MULTILINE) + mapping = re.findall( + r'\(\d+\)\s(.*)$\n\(.*Device: (.+)\)$', + order, + re.MULTILINE) return dict([(b, a) for (a, b) in mapping]) def run_command_with_input(self, command, input): - popen = subprocess.Popen(command, stdin=subprocess.PIPE, stdout=subprocess.PIPE) + popen = subprocess.Popen( + command, + stdin=subprocess.PIPE, + stdout=subprocess.PIPE) (stdout, stderr) = popen.communicate(input) return stdout - + def primary_interace_name(self): scutil_script = 'get State:/Network/Global/IPv4\nd.show\n' stdout = self.run_command_with_input('/usr/sbin/scutil', scutil_script) @@ -54,13 +66,15 @@ class Wrapper(object): return interface def primary_service_name(self): - return self.interface_name_to_service_name_map()[self.primary_interace_name()] + return self.interface_name_to_service_name_map()[ + self.primary_interace_name()] def proxy_enabled_for_service(self, service): return self.proxy_state_for_service(service)['Enabled'] == 'Yes' def toggle_proxy(self): - new_state = not self.proxy_enabled_for_service(self.primary_service_name()) + new_state = not self.proxy_enabled_for_service( + self.primary_service_name()) for service_name in self.connected_service_names(): if self.proxy_enabled_for_service(service_name) and not new_state: self.disable_proxy_for_service(service_name) @@ -74,8 +88,11 @@ class Wrapper(object): service_names = [] for service_id in service_ids: - scutil_script = 'show Setup:/Network/Service/{}\n'.format(service_id) - stdout = self.run_command_with_input('/usr/sbin/scutil', scutil_script) + scutil_script = 'show Setup:/Network/Service/{}\n'.format( + service_id) + stdout = self.run_command_with_input( + '/usr/sbin/scutil', + scutil_script) service_name, = re.findall(r'UserDefinedName\s*:\s*(.+)', stdout) service_names.append(service_name) @@ -102,7 +119,7 @@ class Wrapper(object): for service_name in connected_service_names: if not self.proxy_enabled_for_service(service_name): self.enable_proxy_for_service(service_name) - + yield for service_name in connected_service_names: @@ -119,15 +136,23 @@ class Wrapper(object): def main(cls): parser = argparse.ArgumentParser( description='Helper tool for OS X proxy configuration and mitmproxy.', - epilog='Any additional arguments will be passed on unchanged to mitmproxy.' - ) - parser.add_argument('-t', '--toggle', action='store_true', help='just toggle the proxy configuration') + epilog='Any additional arguments will be passed on unchanged to mitmproxy.') + parser.add_argument( + '-t', + '--toggle', + action='store_true', + help='just toggle the proxy configuration') # parser.add_argument('--honeyproxy', action='store_true', help='run honeyproxy instead of mitmproxy') - parser.add_argument('-p', '--port', type=int, help='override the default port of 8080', default=8080) + parser.add_argument( + '-p', + '--port', + type=int, + help='override the default port of 8080', + default=8080) args, extra_arguments = parser.parse_known_args() wrapper = cls(port=args.port, extra_arguments=extra_arguments) - + if args.toggle: wrapper.toggle_proxy() # elif args.honeyproxy: @@ -139,4 +164,3 @@ class Wrapper(object): if __name__ == '__main__': Wrapper.ensure_superuser() Wrapper.main() - -- cgit v1.2.3