From 5aba14b469f76e3100462f35a2fbe8aafccc41e6 Mon Sep 17 00:00:00 2001 From: age Date: Sun, 17 Feb 2008 16:25:03 +0000 Subject: [PATCH] * device list as explicit list --- src/cryptobox/core/settings.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/cryptobox/core/settings.py b/src/cryptobox/core/settings.py index 54f0437..5dbe2c9 100644 --- a/src/cryptobox/core/settings.py +++ b/src/cryptobox/core/settings.py @@ -561,7 +561,7 @@ class CryptoBoxSettings: validation_spec = """ [Main] -AllowedDevices = list(min=1) +AllowedDevices = listOfDevices(default="") DefaultVolumePrefix = string(min=1) DefaultCipher = string(default="aes-cbc-essiv:sha256") ConfigVolumeLabel = string(min=1, default="cbox_config") @@ -625,6 +625,7 @@ class CryptoBoxSettingsValidator(validate.Validator): self.functions["fileWriteable"] = self.check_file_writeable self.functions["listOfExistingDirectories"] = self.check_existing_directories self.functions["listOfLanguages"] = self.list_languages + self.functions["listOfDevices"] = self.list_devices def check_directory_exists(self, value): @@ -692,6 +693,16 @@ class CryptoBoxSettingsValidator(validate.Validator): langs = [langs] return langs + def list_devices(self, devices): + """Return devices as a list. + """ + if not devices: + raise validate.VdtValueError("no device specified") + if not isinstance(devices, list): + devices = [devices] + return devices + + class MiscConfigFile: """all other config files (e.g. a ssl certificate) to be stored"""