@@ -62,7 +62,7 @@ class MinimalPackageSerializer(BaseResourceSerializer):
6262 """
6363
6464 def get_affected_vulnerabilities (self , package ):
65- parent_affected_vulnerabilities = package .fixed_package_details . get ( "vulnerabilities" ) or []
65+ parent_affected_vulnerabilities = package .get_affecting_vulnerabilities ( ) or []
6666
6767 affected_vulnerabilities = [
6868 self .get_vulnerability (vuln ) for vuln in parent_affected_vulnerabilities
@@ -259,7 +259,7 @@ def get_vulnerabilities_for_a_package(self, package, fix) -> dict:
259259 context = {"request" : self .context ["request" ]},
260260 ).data
261261
262- vuln_data ["fixed_packages" ] = [pkg . purl for pkg in vulnerability .fixed_packages_for_vuln (package = package )]
262+ vuln_data ["fixed_packages" ] = [MinimalPackageSerializer ( instance = pkg , context = { "request" : self . context [ "request" ]}). data for pkg in vulnerability .fixed_packages_for_vuln (package = package )]
263263 vulnerabilities_with_fixed_packages .append (vuln_data )
264264
265265 return vulnerabilities_with_fixed_packages
@@ -279,15 +279,16 @@ def get_affected_vulnerabilities(self, package) -> dict:
279279 excluded_purls = []
280280 package_vulnerabilities = self .get_vulnerabilities_for_a_package (package = package , fix = False )
281281
282- # for vuln in package_vulnerabilities:
283- # for pkg in vuln["fixed_packages"]:
284- # real_purl = PackageURL.from_string(pkg["purl"])
285- # if package.version_class(real_purl.version) <= package.current_version:
286- # excluded_purls.append(pkg["purl"])
282+ for vuln in package_vulnerabilities :
283+ for pkg in vuln ["fixed_packages" ]:
284+ print (pkg )
285+ real_purl = PackageURL .from_string (pkg ["purl" ])
286+ if package .version_class (real_purl .version ) <= package .current_version :
287+ excluded_purls .append (pkg ["purl" ])
287288
288- # vuln["fixed_packages"] = [
289- # pkg for pkg in vuln["fixed_packages"] if pkg["purl"] not in excluded_purls
290- # ]
289+ vuln ["fixed_packages" ] = [
290+ pkg for pkg in vuln ["fixed_packages" ] if pkg ["purl" ] not in excluded_purls
291+ ]
291292
292293 return package_vulnerabilities
293294
0 commit comments