def from_obj(cls, obj, return_obj=None): if not obj: return None if not return_obj: return_obj = cls() super(SnortTestMechanism, cls).from_obj(obj, return_obj) return_obj.product_name = obj.get_Product_Name() return_obj.version = obj.get_Version() if obj.get_Rule(): return_obj.rules = [ EncodedCDATA.from_obj(x) for x in obj.get_Rule() ] if obj.get_Event_Filter(): return_obj.event_filters = [ EncodedCDATA.from_obj(x) for x in obj.get_Event_Filter() ] if obj.get_Rate_Filter(): return_obj.rate_filters = [ EncodedCDATA.from_obj(x) for x in obj.get_Rate_Filter() ] if obj.get_Event_Suppression(): return_obj.event_suppressions = [ EncodedCDATA.from_obj(x) for x in obj.get_Event_Suppression() ] return return_obj
def from_obj(cls, obj, return_obj=None): if not obj: return None if not return_obj: return_obj = cls() super(SnortTestMechanism, cls).from_obj(obj, return_obj) return_obj.product_name = obj.Product_Name return_obj.version = obj.Version if obj.Rule: return_obj.rules = [EncodedCDATA.from_obj(x) for x in obj.Rule] if obj.Event_Filter: return_obj.event_filters = [ EncodedCDATA.from_obj(x) for x in obj.Event_Filter ] if obj.Rate_Filter: return_obj.rate_filters = [ EncodedCDATA.from_obj(x) for x in obj.Rate_Filter ] if obj.Event_Suppression: return_obj.event_suppressions = [ EncodedCDATA.from_obj(x) for x in obj.Event_Suppression ] return return_obj
def test_set_value(self): stripped = "TESTTEST" wrapped = '<![CDATA[%s]]>' % stripped ecdata = EncodedCDATA() ecdata.value = wrapped self.assertEqual(ecdata.value, stripped) self.assertEqual(ecdata.cdata, wrapped)
def add_event_suppression(self, item): if not item: return elif isinstance(item, EncodedCDATA): self.event_suppressions.append(item) else: self.rules.append(EncodedCDATA(value=item))
def from_dict(cls, d, return_obj=None): if not d: return None if not return_obj: return_obj = cls() super(SnortTestMechanism, cls).from_dict(d, return_obj) return_obj.product_name = d.get('product_name') return_obj.version = d.get('version') return_obj.rules = [EncodedCDATA.from_dict(x) for x in d.get('rules', [])] return_obj.event_filters = [EncodedCDATA.from_dict(x) for x in d.get('event_filters', [])] return_obj.rate_filters = [EncodedCDATA.from_dict(x) for x in d.get('rate_filters', [])] return_obj.event_suppressions = [EncodedCDATA.from_dict(x) for x in d.get('event_suppressions', [])] return return_obj
def add_rule(self, rule): if not rule: return elif isinstance(rule, EncodedCDATA): self.rules.append(rule) else: self.rules.append(EncodedCDATA(value=rule))
def add_rate_filter(self, item): if not item: return elif isinstance(item, EncodedCDATA): self.rate_filters.append(item) else: self.rules.append(EncodedCDATA(value=item))
def specification(self, value): if not value: self._specification = None if isinstance(value, EncodedCDATA): self._specification = value else: self._specification = EncodedCDATA(value=value)
def rule(self, value): if not value: self._rule = None if isinstance(value, EncodedCDATA): self._rule = value else: self._rule = EncodedCDATA(value=value)
def test_strip_cdata(self): stripped = "TESTTEST" wrapped = '<![CDATA[%s]]>' % stripped d = {'value': wrapped, 'encoded': False} ecdata = EncodedCDATA.from_dict(d) self.assertEqual(ecdata.value, stripped)
def from_dict(cls, d, return_obj=None): if not d: return None if not return_obj: return_obj = cls() super(YaraTestMechanism, cls).from_dict(d, return_obj) return_obj.version = d.get('version') return_obj.rule = EncodedCDATA.from_dict(d.get('rule')) return return_obj
def from_obj(cls, obj, return_obj=None): if not obj: return None if not return_obj: return_obj = cls() super(YaraTestMechanism, cls).from_obj(obj, return_obj) return_obj.version = obj.Version return_obj.rule = EncodedCDATA.from_obj(obj.Rule) return return_obj
def from_obj(cls, obj, return_obj=None): if not obj: return None if not return_obj: return_obj = cls() super(SnortTestMechanism, cls).from_obj(obj, return_obj) return_obj.product_name = obj.Product_Name return_obj.version = obj.Version if obj.Rule: return_obj.rules = [EncodedCDATA.from_obj(x) for x in obj.Rule] if obj.Event_Filter: return_obj.event_filters = [EncodedCDATA.from_obj(x) for x in obj.Event_Filter] if obj.Rate_Filter: return_obj.rate_filters = [EncodedCDATA.from_obj(x) for x in obj.Rate_Filter] if obj.Event_Suppression: return_obj.event_suppressions = [EncodedCDATA.from_obj(x) for x in obj.Event_Suppression] return return_obj
def from_obj(cls, obj, return_obj=None): if not obj: return None if not return_obj: return_obj = cls() super(SnortTestMechanism, cls).from_obj(obj, return_obj) return_obj.product_name = obj.get_Product_Name() return_obj.version = obj.get_Version() if obj.get_Rule(): return_obj.rules = [EncodedCDATA.from_obj(x) for x in obj.get_Rule()] if obj.get_Event_Filter(): return_obj.event_filters = [EncodedCDATA.from_obj(x) for x in obj.get_Event_Filter()] if obj.get_Rate_Filter(): return_obj.rate_filters = [EncodedCDATA.from_obj(x) for x in obj.get_Rate_Filter()] if obj.get_Event_Suppression(): return_obj.event_suppressions = [EncodedCDATA.from_obj(x) for x in obj.get_Event_Suppression()] return return_obj
def test_strip_cdata(self): stripped = "TESTTEST" wrapped = '<![CDATA[%s]]>' % stripped d = { 'value': wrapped, 'encoded': False } ecdata = EncodedCDATA.from_dict(d) self.assertEqual(ecdata.value, stripped)
def from_obj(cls, obj, return_obj=None): if not obj: return None if not return_obj: return_obj = cls() super(GenericTestMechanism, cls).from_obj(obj, return_obj) return_obj.reference_location = obj.reference_location return_obj.description = StructuredText.from_obj(obj.Description) return_obj.type_ = VocabString.from_obj(obj.Type) return_obj.specification = EncodedCDATA.from_obj(obj.Specification) return return_obj
def from_dict(cls, d, return_obj=None): if not d: return None if not return_obj: return_obj = cls() super(GenericTestMechanism, cls).from_dict(d, return_obj) return_obj.reference_location = d.get('reference_location') return_obj.description = StructuredText.from_dict(d.get('description')) return_obj.type_ = VocabString.from_dict(d.get('type')) return_obj.specification = EncodedCDATA.from_dict(d.get('specification')) return return_obj
def test_set_none(self): ecdata = EncodedCDATA() ecdata.value = None self.assertTrue(ecdata.value is None) self.assertTrue(ecdata.cdata is None)