From c540338b798a15b736770a51f87eb13606faa544 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20=C5=BDidek?= Date: Thu, 15 Oct 2015 18:53:37 +0200 Subject: [PATCH 4/6] SSSDConfig: Do not raise exception if config_file_version is missing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ticket: https://fedorahosted.org/sssd/ticket/2837 Reviewed-by: Lukáš Slebodník (cherry picked from commit 6a044fa43d53638c1d0b874d43f58c0428820362) (cherry picked from commit a2363aa5984a707b8834816ea8538fe7de250a63) --- src/config/SSSDConfig/__init__.py.in | 8 ++++---- src/config/SSSDConfigTest.py | 5 ----- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/config/SSSDConfig/__init__.py.in b/src/config/SSSDConfig/__init__.py.in index 038de16d55423a73c0bed6a0e27d99e1ab46a90f..bf61c402796122050fa43cf41128faec4771c5d2 100644 --- a/src/config/SSSDConfig/__init__.py.in +++ b/src/config/SSSDConfig/__init__.py.in @@ -1405,10 +1405,10 @@ class SSSDConfig(SSSDChangeConf): try: if int(self.get('sssd', 'config_file_version')) != self.API_VERSION: raise ParsingError("Wrong config_file_version") - except: - # Either the 'sssd' section or the 'config_file_version' was not - # present in the config file - raise ParsingError("File contains no config_file_version") + except TypeError: + # This happens when config_file_version is missing. We + # can assume it is the default version and continue. + pass def new_config(self): """ diff --git a/src/config/SSSDConfigTest.py b/src/config/SSSDConfigTest.py index 5047bd7237188be4df83f76054afe6b43ceeec1d..a850b8d2c5933c4c08b5b0e8f4db79f3c88fc5ee 100755 --- a/src/config/SSSDConfigTest.py +++ b/src/config/SSSDConfigTest.py @@ -1226,11 +1226,6 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase): srcdir + "/etc/sssd.api.d") self.assertRaises(SSSDConfig.ParsingError, sssdconfig.import_config, srcdir + "/testconfigs/sssd-badversion.conf") - # Negative Test - No config file version - sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf", - srcdir + "/etc/sssd.api.d") - self.assertRaises(SSSDConfig.ParsingError, sssdconfig.import_config, srcdir + "/testconfigs/sssd-noversion.conf") - # Negative Test - Already initialized sssdconfig = SSSDConfig.SSSDConfig(srcdir + "/etc/sssd.api.conf", srcdir + "/etc/sssd.api.d") -- 2.5.0