From 64adcb62667adefc885bfcc5ae0f934300a96db3 Mon Sep 17 00:00:00 2001 From: "Chris St. Pierre" Date: Thu, 17 May 2012 15:04:23 -0400 Subject: fixed encrypted genshi/cheetah generators --- src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py') diff --git a/src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py b/src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py index 9b2db3100..0839e3536 100644 --- a/src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py +++ b/src/lib/Bcfg2/Server/Plugins/Cfg/CfgEncryptedGenerator.py @@ -18,12 +18,16 @@ def passphrases(): return dict() def decrypt(crypted): + if not have_crypto: + msg = "Cfg: M2Crypto is not available: %s" % entry.get("name") + logger.error(msg) + raise Bcfg2.Server.Plugin.PluginExecutionError(msg) for passwd in passphrases().values(): try: return ssl_decrypt(crypted, passwd) except EVPError: pass - raise EVPError("Failed to decrypt %s" % self.name) + raise EVPError("Failed to decrypt") class CfgEncryptedGenerator(CfgGenerator): __extensions__ = ["crypt"] @@ -49,9 +53,9 @@ class CfgEncryptedGenerator(CfgGenerator): try: self.data = decrypt(crypted) except EVPError: - err = sys.exc_info()[1] - logger.error(err) - raise Bcfg2.Server.Plugin.PluginExecutionError(err) + msg = "Failed to decrypt %s" % self.name + logger.error(msg) + raise Bcfg2.Server.Plugin.PluginExecutionError(msg) def get_data(self, entry, metadata): if self.data is None: -- cgit v1.2.3-1-g7c22