X-Git-Url: https://pwan.org/git/?p=certmaster.git;a=blobdiff_plain;f=certmaster%2Fconfig.py;h=7f7e62310b50ebc4879cf142ef865c53041b3db4;hp=4cf2a7fa0ed8779d15913f60abd0984fba00118e;hb=240ba9b7e2ee00a8f6014c7d597a5afd1f96249c;hpb=d7a437a33c7767917fdc963953a39286a01db696 diff --git a/certmaster/config.py b/certmaster/config.py index 4cf2a7f..7f7e623 100644 --- a/certmaster/config.py +++ b/certmaster/config.py @@ -60,7 +60,7 @@ class Option(object): @param obj: The configuration instance to modify. @param objtype: The type of the config instance (not used). @return: The parsed option value or the default value if the value - wasn't set in the configuration file. + was not set in the configuration file. ''' if obj is None: return self @@ -475,4 +475,32 @@ def read_config(config_file, BaseConfigDerived): print >> sys.stderr, "Error reading config file: %s" % e sys.exit(1) opts.populate(confparser, 'main') + + ## build up the cas structure + opts.ca = {} +# opts.ca[''] = {} + + ## Add the default items when just using a single ca +# main_items = confparser.items('main') +# for (key,value) in main_items: +# if key in ['autosign','cadir','cert_dir','certroot','csrroot']: +# print "main ca: key: %s, value: %s" % (key,value) +# opts.ca[''][key] = value + opts.ca[''] = BaseConfigDerived() + opts.ca[''].populate(confparser,'main') + + ## Add additonal ca sections + sections = confparser.sections() + for a_section in sections: + if a_section.startswith('ca:'): + ca_name = a_section[3:] +# items = confparser.items(a_section) +# opts.ca[ca_name] = {} +# for (key,value) in items: +# opts.ca[ca_name][key] = value + opts.ca[ca_name] = BaseConfigDerived() + opts.ca[ca_name].populate(confparser,a_section) + opts.ca[ca_name].cakey = None + opts.ca[ca_name].cacert = None + return opts