diff options
author | Tomás Touceda <chiiph@leap.se> | 2013-08-01 16:03:45 -0300 |
---|---|---|
committer | Tomás Touceda <chiiph@leap.se> | 2013-08-01 16:03:45 -0300 |
commit | 1b9f4c824406f26e135a0d96cad04064b8864615 (patch) | |
tree | d5d763ccf705c38a6075f971dbe71acf28d30d08 /src/leap/config | |
parent | 8f3e7332e3fa0b7245eba878456f93a2e11ecbbf (diff) | |
parent | 06818a143817b583f1fb1860a8fd6631677cc2ef (diff) |
Merge remote-tracking branch 'ivan/bug/3362_check-if-cacert-exists' into develop
Diffstat (limited to 'src/leap/config')
-rw-r--r-- | src/leap/config/providerconfig.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/leap/config/providerconfig.py b/src/leap/config/providerconfig.py index 744199f8..eb097034 100644 --- a/src/leap/config/providerconfig.py +++ b/src/leap/config/providerconfig.py @@ -21,13 +21,20 @@ Provider configuration import logging import os -from leap.common.check import leap_assert +from leap.common.check import leap_check from leap.common.config.baseconfig import BaseConfig, LocalizedKey from leap.config.provider_spec import leap_provider_spec logger = logging.getLogger(__name__) +class MissingCACert(Exception): + """ + Raised when a CA certificate is needed but not found. + """ + pass + + class ProviderConfig(BaseConfig): """ Provider configuration abstraction class @@ -118,6 +125,8 @@ class ProviderConfig(BaseConfig): def get_ca_cert_path(self, about_to_download=False): """ Returns the path to the certificate for the current provider. + It may raise MissingCACert if + the certificate does not exists and not about_to_download :param about_to_download: defines wether we want the path to download the cert or not. This helps avoid @@ -135,8 +144,9 @@ class ProviderConfig(BaseConfig): "cacert.pem") if not about_to_download: - leap_assert(os.path.exists(cert_path), - "You need to download the certificate first") + cert_exists = os.path.exists(cert_path) + error_msg = "You need to download the certificate first" + leap_check(cert_exists, error_msg, MissingCACert) logger.debug("Going to verify SSL against %s" % (cert_path,)) return cert_path |