diff options
| author | Ján Jančár | 2024-06-09 17:29:28 +0200 |
|---|---|---|
| committer | GitHub | 2024-06-09 17:29:28 +0200 |
| commit | 52c6a9fc5cf68da9d96d680e1622f3c20a426294 (patch) | |
| tree | a54f74c5e01546e1caa84ccd4bb46d9fb6639b3b | |
| parent | 3191333f0f7508d69b04753814466efed2d952de (diff) | |
| parent | 703c6438db982022d581c2926ab30f1b112d1567 (diff) | |
| download | sec-certs-52c6a9fc5cf68da9d96d680e1622f3c20a426294.tar.gz sec-certs-52c6a9fc5cf68da9d96d680e1622f3c20a426294.tar.zst sec-certs-52c6a9fc5cf68da9d96d680e1622f3c20a426294.zip | |
Merge pull request #412 from J08nY/fix/cc-link-compat
Fix/cc link compat
| -rw-r--r-- | src/sec_certs/sample/cc.py | 10 | ||||
| -rw-r--r-- | src/sec_certs/utils/sanitization.py | 12 |
2 files changed, 16 insertions, 6 deletions
diff --git a/src/sec_certs/sample/cc.py b/src/sec_certs/sample/cc.py index 28099f58..e753eb83 100644 --- a/src/sec_certs/sample/cc.py +++ b/src/sec_certs/sample/cc.py @@ -58,10 +58,10 @@ class CCCertificate( def __post_init__(self): super().__setattr__( - "maintenance_report_link", sec_certs.utils.sanitization.sanitize_link(self.maintenance_report_link) + "maintenance_report_link", sec_certs.utils.sanitization.sanitize_cc_link(self.maintenance_report_link) ) super().__setattr__( - "maintenance_st_link", sec_certs.utils.sanitization.sanitize_link(self.maintenance_st_link) + "maintenance_st_link", sec_certs.utils.sanitization.sanitize_cc_link(self.maintenance_st_link) ) super().__setattr__( "maintenance_title", sec_certs.utils.sanitization.sanitize_string(self.maintenance_title) @@ -430,9 +430,9 @@ class CCCertificate( self.security_level = sec_certs.utils.sanitization.sanitize_security_levels(security_level) self.not_valid_before = sec_certs.utils.sanitization.sanitize_date(not_valid_before) self.not_valid_after = sec_certs.utils.sanitization.sanitize_date(not_valid_after) - self.report_link = sec_certs.utils.sanitization.sanitize_link(report_link) - self.st_link = sec_certs.utils.sanitization.sanitize_link(st_link) - self.cert_link = sec_certs.utils.sanitization.sanitize_link(cert_link) + self.report_link = sec_certs.utils.sanitization.sanitize_cc_link(report_link) + self.st_link = sec_certs.utils.sanitization.sanitize_cc_link(st_link) + self.cert_link = sec_certs.utils.sanitization.sanitize_cc_link(cert_link) self.manufacturer_web = sec_certs.utils.sanitization.sanitize_link(manufacturer_web) self.protection_profiles = protection_profiles self.maintenance_updates = maintenance_updates diff --git a/src/sec_certs/utils/sanitization.py b/src/sec_certs/utils/sanitization.py index 17e34362..fd477746 100644 --- a/src/sec_certs/utils/sanitization.py +++ b/src/sec_certs/utils/sanitization.py @@ -23,6 +23,16 @@ def sanitize_link(record: str | None) -> str | None: return record.replace(":443", "").replace(" ", "%20").replace("http://", "https://") +def sanitize_cc_link(record: str | None) -> str | None: + record = sanitize_link(record) + if not record: + return None + record = record.replace("nfs/ccpfiles/", "") + if record == "https://www.commoncriteriaportal.org/files/epfiles/": + return None + return record + + def sanitize_date(record: pd.Timestamp | date | np.datetime64) -> date | None: if pd.isnull(record): return None @@ -42,7 +52,7 @@ def sanitize_string(record: str) -> str: def sanitize_security_levels(record: str | set[str]) -> set[str]: if isinstance(record, str): record = set(record.split(",")) - return record - {"Basic", "ND-PP", "PP\xa0Compliant", "None", "Medium"} + return record - {"Basic", "ND-PP", "PP\xa0Compliant", "None", "Medium", ""} def sanitize_protection_profiles(record: str) -> list: |
