in default/cve5/script.js [318:349]
function getProductAffected(cve) {
var lines = [];
for (var vendor of cve.affected.vendors) {
var pstring = [];
for (var product of vendor.products) {
var versions = {};
var includePlatforms = true;
var platforms = {};
for (var version of product.versions) {
if (version.version_affected && version.version_affected.indexOf('!') < 0 && version.version_affected.indexOf('?') < 0) {
versions[version.version_name] = 1;
if (version.platform == "all" || version.platform == "") {
includePlatforms = false;
}
if (includePlatforms && version.platform) {
var ps = version.platform.split(',');
for (var p of ps) {
platforms[p.trim()] = true;
}
}
}
}
pstring.push('This issue affects ' + product.product_name + ' ' +
Object.keys(versions).sort().join(", ") + '.');
if (includePlatforms && (Object.keys(platforms).length > 0)) {
pstring.push('Affected platforms: ' + Object.keys(platforms).sort().join(', ') + '.');
}
}
lines.push(pstring.join(" "));
}
return lines.join();
};