From 69e1ecbf9dec617b6e2273ed531b6792b3579602 Mon Sep 17 00:00:00 2001 From: lars Date: Wed, 11 Jul 2007 19:24:50 +0000 Subject: [PATCH] a warning should be more appropriate than crashing --- .../encrypted_webinterface.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/plugins/encrypted_webinterface/encrypted_webinterface.py b/plugins/encrypted_webinterface/encrypted_webinterface.py index 3e78d45..915a81d 100644 --- a/plugins/encrypted_webinterface/encrypted_webinterface.py +++ b/plugins/encrypted_webinterface/encrypted_webinterface.py @@ -29,7 +29,7 @@ __revision__ = "$Id$" import cryptobox.plugins.base import subprocess -import os, sys +import os import cherrypy CERT_FILENAME = 'cryptobox-ssl-certificate.pem' @@ -120,8 +120,13 @@ class encrypted_webinterface(cryptobox.plugins.base.CryptoBoxPlugin): if event == "bootup": cert_abs_name = self.cbox.prefs.get_misc_config_filename(CERT_FILENAME) if not os.path.isfile(cert_abs_name): + cert = self.__get_certificate() + if cert is None: + ## failed to create a certificate? + self.cbox.log.warn("Failed to import M2Crypto python module" \ + + " required for SSL certificate generation") + return try: - cert = self.__get_certificate() self.cbox.prefs.create_misc_config_file(CERT_FILENAME, cert) self.cbox.log.info("Created new SSL certificate: %s" % \ cert_abs_name) @@ -217,9 +222,8 @@ class encrypted_webinterface(cryptobox.plugins.base.CryptoBoxPlugin): try: import M2Crypto except ImportError: - sys.stderr.write("Plugin encrypted_webinterface could not import M2Crypto module!\n") - sys.stderr.write("Try 'apt-get install python-m2crypto'.\n") - sys.exit(1) + ## failed to import the module + return None import time string_type = 0x1000 | 1 # see http://www.koders.com/python/.. # ../fid07A99E089F55187896A06CD4E0B6F21B9B8F5B0B.aspx?s=bavaria