diff options
author | Niranjan Mallapadi <mrniranjan@redhat.com> | 2015-10-05 16:16:06 +0530 |
---|---|---|
committer | Niranjan Mallapadi <mrniranjan@redhat.com> | 2015-10-05 16:22:05 +0530 |
commit | dec7fe7aea653d1192bab47a503c98970f8d898f (patch) | |
tree | 35d5d81f253bbcb8439fd84698f7993e0847fc0a /tests | |
parent | a401b768197cbecf14d4e9fb268b51056dfa2510 (diff) | |
download | pki-dec7fe7aea653d1192bab47a503c98970f8d898f.tar.gz pki-dec7fe7aea653d1192bab47a503c98970f8d898f.tar.xz pki-dec7fe7aea653d1192bab47a503c98970f8d898f.zip |
Add common profiles
Signed-off-by: Niranjan Mallapadi <mrniranjan@redhat.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/dogtag/shared/python/pkilib/common/pkicommonlib.py | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/tests/dogtag/shared/python/pkilib/common/pkicommonlib.py b/tests/dogtag/shared/python/pkilib/common/pkicommonlib.py new file mode 100644 index 000000000..82075b475 --- /dev/null +++ b/tests/dogtag/shared/python/pkilib/common/pkicommonlib.py @@ -0,0 +1,115 @@ +#!/usr/bin/python +# -*- coding: utf-8 -* +from lxml import etree + +def policy_attributes(Policy_definition, policy_attributes): + + for idx,(name,syntax,constraint,description,defaultvalue) in enumerate(policy_attributes): + policy_attribute_name = etree.SubElement(Policy_definition, 'policyAttribute', name=name) + policy_attribute_descriptor = etree.SubElement(policy_attribute_name,'Descriptor') + policy_attribute_syntax = etree.SubElement(policy_attribute_descriptor, 'Syntax').text = syntax + if constraint != 'NULL': + policy_attribute_constraint = etree.SubElement(policy_attribute_descriptor, 'Constraint').text=constraint + policy_attribute_description = etree.SubElement(policy_attribute_descriptor, 'Description').text = description + if defaultvalue != 'NULL': + policy_attribute_defaultvalue = etree.SubElement(policy_attribute_descriptor, 'DefaultValue').text = defaultvalue + else: + policy_attribute_defaultvalue = etree.SubElement(policy_attribute_descriptor, 'DefaultValue') + + +def constraint_attributes(constraint_definition, constraint_attributes): + + for idx,(constraintid, syntax, constraint, description, defaultvalue, value) in enumerate(constraint_attributes): + + constraint_id = etree.SubElement(constraint_definition, 'constraint', id = constraintid) + constraint_id_descriptor = etree.SubElement(constraint_id, 'descriptor') + constraint_id_descriptor_syntax = etree.SubElement(constraint_id_descriptor, 'Syntax').text = syntax + if constraint != 'NULL': + constraint_id_descriptor_syntax = etree.SubElement(constraint_id_descriptor, 'Constraint').text = constraint + + constraint_id_descriptor_description = etree.SubElement(constraint_id_descriptor, 'Description').text = description + + if defaultvalue != 'NULL': + constraint_id_descriptor_defaultvalue = etree.SubElement(constraint_id_descriptor, 'DefaultValue').text = defaultvalue + + if value != 'NULL': + constraint_value = etree.SubElement(constraint_id, 'value').text = value + else: + constraint_value = etree.SubElement(constraint_id, 'value') + +def policy_parameters(Policy_definition, parameters): + + for idx,(name, value) in enumerate(parameters): + + policy_param_name = etree.SubElement(Policy_definition, 'params', name=name) + if value != 'NULL': + policy_param_value = etree.SubElement(policy_param_name, 'value').text=value + else: + policy_param_value = etree.SubElement(policy_param_name, 'value') + +def policy_definition(Policy_Value,definition): + + Policy_definition = etree.SubElement(Policy_Value, 'def', id=definition['id'], classId=definition['classid']) + Policy_description = etree.SubElement(Policy_definition, 'description').text = definition['description'] + + return Policy_definition + +def constraint_definition(Policy_Value, definition): + + constraint_definition = etree.SubElement(Policy_Value, 'constraint', id=definition['id']) + constraint_description = etree.SubElement(constraint_definition, 'description').text = definition['description'] + constraint_classid = etree.SubElement(constraint_definition, 'classId').text = definition['classId'] + + return constraint_definition + +def check_ext_key_usage(mylist, string): + + s1 = 'true' + s2 = 'false' + if string in mylist: + return s1 + else: + return s2 + +def get_policyId(root): + + Policy_Value = root.findall('./PolicySets/PolicySet/value') + value = 0 + for key in Policy_Value: + attributes = key.attrib + value = attributes["id"] + if value is 0: + pvalue = '1' + else: + pvalue = int(value) + 1 + + return str(pvalue) + +def get_Element_PolicyValue(PolicySet,javaclass): + + mydict = {} + for key in PolicySet.iterchildren(tag='value'): + PolicyValues=key.items()[0][1] + classId=key[0].get('classId') + mydict[classId]=PolicyValues + + if mydict.has_key(javaclass): + value_Id = mydict[javaclass] + Policy_value = PolicySet.find('./value[@id=' + "\"" + str(value_Id) + "\"" + "]") + return Policy_value + else: + return None + +def check_policy(PolicySet, javaclass): + + DefinedPolicies = PolicySet.findall("./value/def") + list_of_policy_classes = [] + for classes in DefinedPolicies: + list_of_policy_classes.append(classes.get('classId')) + + # check if my classId is already there + if javaclass in list_of_policy_classes: + return True + else: + return False + |