aboutsummaryrefslogtreecommitdiffhomepage
path: root/sec_certs
diff options
context:
space:
mode:
authorAdam Janovsky2022-02-16 13:01:11 +0100
committerAdam Janovsky2022-02-16 13:01:11 +0100
commitd4ecef794fd01c17fe47cf672d28bd2a0f007724 (patch)
treeb2a5ea6c2b8a44e114b91d48895160a4d62a7eee /sec_certs
parentf00534726fc736fa61e8f9c3e5484e67ecd1b8ed (diff)
downloadsec-certs-d4ecef794fd01c17fe47cf672d28bd2a0f007724.tar.gz
sec-certs-d4ecef794fd01c17fe47cf672d28bd2a0f007724.tar.zst
sec-certs-d4ecef794fd01c17fe47cf672d28bd2a0f007724.zip
fix cpe matching example
Diffstat (limited to 'sec_certs')
-rw-r--r--sec_certs/dataset/cpe.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/sec_certs/dataset/cpe.py b/sec_certs/dataset/cpe.py
index b9c04cad..8e552039 100644
--- a/sec_certs/dataset/cpe.py
+++ b/sec_certs/dataset/cpe.py
@@ -47,13 +47,19 @@ class CPEDataset(ComplexSerializableType):
def __contains__(self, item: CPE) -> bool:
if not isinstance(item, CPE):
raise ValueError(f"{item} is not of CPE class")
- return item.uri in self.cpes.keys()
+ return item.uri in self.cpes.keys() and self.cpes[item.uri] == item
+
+ def __eq__(self, other: object) -> bool:
+ return isinstance(other, CPEDataset) and self.cpes == other.cpes
@property
def serialized_attributes(self) -> List[str]:
return ["was_enhanced_with_vuln_cpes", "json_path", "cpes"]
def __post_init__(self) -> None:
+ self.build_lookup_dicts()
+
+ def build_lookup_dicts(self) -> None:
"""
Will build look-up dictionaries that are used for fast matching
"""