diff options
Diffstat (limited to 'src/leap/eip/exceptions.py')
| -rw-r--r-- | src/leap/eip/exceptions.py | 64 | 
1 files changed, 47 insertions, 17 deletions
diff --git a/src/leap/eip/exceptions.py b/src/leap/eip/exceptions.py index 11bfd620..b7d398c3 100644 --- a/src/leap/eip/exceptions.py +++ b/src/leap/eip/exceptions.py @@ -32,8 +32,11 @@ TODO:  * gettext / i18n for user messages.  """ +from leap.base.exceptions import LeapException +from leap.util.translations import translate +# This should inherit from LeapException  class EIPClientError(Exception):      """      base EIPClient exception @@ -60,45 +63,70 @@ class Warning(EIPClientError):  class EIPNoPolkitAuthAgentAvailable(CriticalError):      message = "No polkit authentication agent could be found" -    usermessage = ("We could not find any authentication " -                   "agent in your system.<br/>" -                   "Make sure you have " -                   "<b>polkit-gnome-authentication-agent-1</b> " -                   "running and try again.") +    usermessage = translate( +        "EIPErrors", +        "We could not find any authentication " +        "agent in your system.<br/>" +        "Make sure you have " +        "<b>polkit-gnome-authentication-agent-1</b> " +        "running and try again.")  class EIPNoPkexecAvailable(Warning):      message = "No pkexec binary found" -    usermessage = ("We could not find <b>pkexec</b> in your " -                   "system.<br/> Do you want to try " -                   "<b>setuid workaround</b>? " -                   "(<i>DOES NOTHING YET</i>)") +    usermessage = translate( +        "EIPErrors", +        "We could not find <b>pkexec</b> in your " +        "system.<br/> Do you want to try " +        "<b>setuid workaround</b>? " +        "(<i>DOES NOTHING YET</i>)")      failfirst = True  class EIPNoCommandError(EIPClientError):      message = "no suitable openvpn command found" -    usermessage = ("No suitable openvpn command found. " -                   "<br/>(Might be a permissions problem)") +    usermessage = translate( +        "EIPErrors", +        "No suitable openvpn command found. " +        "<br/>(Might be a permissions problem)")  class EIPBadCertError(Warning):      # XXX this should be critical and fail close      message = "cert verification failed" -    usermessage = "there is a problem with provider certificate" +    usermessage = translate( +        "EIPErrors", +        "there is a problem with provider certificate")  class LeapBadConfigFetchedError(Warning):      message = "provider sent a malformed json file" -    usermessage = "an error occurred during configuratio of leap services" +    usermessage = translate( +        "EIPErrors", +        "an error occurred during configuratio of leap services") -class OpenVPNAlreadyRunning(EIPClientError): +class OpenVPNAlreadyRunning(CriticalError):      message = "Another OpenVPN Process is already running." -    usermessage = ("Another OpenVPN Process has been detected." -                   "Please close it before starting leap-client") +    usermessage = translate( +        "EIPErrors", +        "Another OpenVPN Process has been detected. " +        "Please close it before starting leap-client") +class HttpsNotSupported(LeapException): +    message = "connection refused while accessing via https" +    usermessage = translate( +        "EIPErrors", +        "Server does not allow secure connections") + + +class HttpsBadCertError(LeapException): +    message = "verification error on cert" +    usermessage = translate( +        "EIPErrors", +        "Server certificate could not be verified") +  #  # errors still needing some love  # @@ -106,7 +134,9 @@ class OpenVPNAlreadyRunning(EIPClientError):  class EIPInitNoKeyFileError(CriticalError):      message = "No vpn keys found in the expected path" -    usermessage = "We could not find your eip certs in the expected path" +    usermessage = translate( +        "EIPErrors", +        "We could not find your eip certs in the expected path")  class EIPInitBadKeyFilePermError(Warning):  | 
