diff options
author | Maximilian Hils <git@maximilianhils.com> | 2016-02-15 14:58:46 +0100 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2016-02-15 14:58:46 +0100 |
commit | 33fa49277a821b9d38e8c9bf0bcf2adcfa2f6f04 (patch) | |
tree | 31914a601302579ff817504019296fd7e9e46765 /libmproxy/platform/osx.py | |
parent | 36f34f701991b5d474c005ec45e3b66e20f326a8 (diff) | |
download | mitmproxy-33fa49277a821b9d38e8c9bf0bcf2adcfa2f6f04.tar.gz mitmproxy-33fa49277a821b9d38e8c9bf0bcf2adcfa2f6f04.tar.bz2 mitmproxy-33fa49277a821b9d38e8c9bf0bcf2adcfa2f6f04.zip |
move mitmproxy
Diffstat (limited to 'libmproxy/platform/osx.py')
-rw-r--r-- | libmproxy/platform/osx.py | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/libmproxy/platform/osx.py b/libmproxy/platform/osx.py deleted file mode 100644 index afbc919b..00000000 --- a/libmproxy/platform/osx.py +++ /dev/null @@ -1,36 +0,0 @@ -import subprocess -import pf - -""" - Doing this the "right" way by using DIOCNATLOOK on the pf device turns out - to be a pain. Apple has made a number of modifications to the data - structures returned, and compiling userspace tools to test and work with - this turns out to be a pain in the ass. Parsing pfctl output is short, - simple, and works. - - Note: Also Tested with FreeBSD 10 pkgng Python 2.7.x. - Should work almost exactly as on Mac OS X and except with some changes to - the output processing of pfctl (see pf.py). -""" - - -class Resolver(object): - STATECMD = ("sudo", "-n", "/sbin/pfctl", "-s", "state") - - def original_addr(self, csock): - peer = csock.getpeername() - try: - stxt = subprocess.check_output(self.STATECMD, stderr=subprocess.STDOUT) - except subprocess.CalledProcessError as e: - if "sudo: a password is required" in e.output: - insufficient_priv = True - else: - raise RuntimeError("Error getting pfctl state: " + repr(e)) - else: - insufficient_priv = "sudo: a password is required" in stxt - - if insufficient_priv: - raise RuntimeError( - "Insufficient privileges to access pfctl. " - "See http://mitmproxy.org/doc/transparent/osx.html for details.") - return pf.lookup(peer[0], peer[1], stxt) |