diff options
| author | Adam Janovsky | 2023-04-21 20:14:12 +0200 |
|---|---|---|
| committer | Adam Janovsky | 2023-04-21 20:14:12 +0200 |
| commit | d4825d1650776735ddab3cedcc6f0c34d5aedb95 (patch) | |
| tree | e52e69786ad59323de5dd7fa98d6e46e086e6f8b /src/sec_certs/sample | |
| parent | 98163ce1946e8e4b61e10037eb2e774c129bc282 (diff) | |
| download | sec-certs-d4825d1650776735ddab3cedcc6f0c34d5aedb95.tar.gz sec-certs-d4825d1650776735ddab3cedcc6f0c34d5aedb95.tar.zst sec-certs-d4825d1650776735ddab3cedcc6f0c34d5aedb95.zip | |
fix cwe parsing in cvedataset
Diffstat (limited to 'src/sec_certs/sample')
| -rw-r--r-- | src/sec_certs/sample/cve.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/sec_certs/sample/cve.py b/src/sec_certs/sample/cve.py index 333f1899..7f1a7cba 100644 --- a/src/sec_certs/sample/cve.py +++ b/src/sec_certs/sample/cve.py @@ -173,9 +173,10 @@ class CVE(PandasSerializableType, ComplexSerializableType): def parse_cwe_data(dct: dict) -> set[str] | None: if "weaknesses" not in dct: return None - assert dct["weaknesses"][0]["type"] == "Primary" - descriptions = dct["weaknesses"][0]["description"] - return {x["value"] for x in descriptions} if descriptions else None + + descriptions = [x["description"] for x in dct["weaknesses"]] + cwes = {x["value"] for description in descriptions for x in description} + return cwes if cwes else None @staticmethod def parse_configurations( |
