diff options
author | Maximilian Hils <git@maximilianhils.com> | 2016-02-18 13:03:40 +0100 |
---|---|---|
committer | Maximilian Hils <git@maximilianhils.com> | 2016-02-18 13:03:40 +0100 |
commit | d33d3663ecb166461d9cb5a78a29b44ee7a8fbb7 (patch) | |
tree | fe8856f65d1dafa946150c5acbaf6e942ba3c026 /mitmproxy/exceptions.py | |
parent | 294774d6f0dee95b02a93307ec493b111b7f171e (diff) | |
download | mitmproxy-d33d3663ecb166461d9cb5a78a29b44ee7a8fbb7.tar.gz mitmproxy-d33d3663ecb166461d9cb5a78a29b44ee7a8fbb7.tar.bz2 mitmproxy-d33d3663ecb166461d9cb5a78a29b44ee7a8fbb7.zip |
combine projects
Diffstat (limited to 'mitmproxy/exceptions.py')
-rw-r--r-- | mitmproxy/exceptions.py | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/mitmproxy/exceptions.py b/mitmproxy/exceptions.py new file mode 100644 index 00000000..f0ff81a2 --- /dev/null +++ b/mitmproxy/exceptions.py @@ -0,0 +1,57 @@ +""" +We try to be very hygienic regarding the exceptions we throw: +Every Exception mitmproxy raises shall be a subclass of ProxyException. + + +See also: http://lucumr.pocoo.org/2014/10/16/on-error-handling/ +""" +from __future__ import (absolute_import, print_function, division) + + +class ProxyException(Exception): + + """ + Base class for all exceptions thrown by mitmproxy. + """ + + def __init__(self, message=None): + super(ProxyException, self).__init__(message) + + +class ProtocolException(ProxyException): + pass + + +class TlsProtocolException(ProtocolException): + pass + + +class ClientHandshakeException(TlsProtocolException): + + def __init__(self, message, server): + super(ClientHandshakeException, self).__init__(message) + self.server = server + + +class Socks5ProtocolException(ProtocolException): + pass + + +class HttpProtocolException(ProtocolException): + pass + + +class ServerException(ProxyException): + pass + + +class ContentViewException(ProxyException): + pass + + +class ReplayException(ProxyException): + pass + + +class ScriptException(ProxyException): + pass |