in default/cve5/static/cvss40.js [310:388]
macrovector() {
const av = this.getReal('AV');
const ac = this.getReal('AC');
const at = this.getReal('AT');
const pr = this.getReal('PR');
const ui = this.getReal('UI');
const vc = this.getReal('VC');
const vi = this.getReal('VI');
const va = this.getReal('VA');
const sc = this.getReal('SC');
const si = this.getReal('SI');
const sa = this.getReal('SA');
const e = this.getReal('E');
const cr = this.getReal('CR');
const ir = this.getReal('IR');
const ar = this.getReal('AR');
// Compte MacroVectors
// => EQ1
let eq1 = '0';
if (av == 'N' && pr == 'N' && ui == 'N') {
eq1 = '0';
}
else if ((av == 'N' || pr == 'N' || ui == 'N') && !(av == 'N' && pr == 'N' && ui == 'N') && !(av == 'P')) {
eq1 = '1';
}
else if (av == 'P' || !(av == 'N' || pr == 'N' || ui == 'N')) {
eq1 = '2';
}
// EQ2
let eq2 = '0';
if (!(ac == 'L' && at == 'N')) {
eq2 = '1';
}
// EQ3
let eq3 = '0';
if (vc == 'H' && vi == 'H') {
eq3 = '0';
}
else if (!(vc == 'H' && vi == 'H') && (vc == 'H' || vi == 'H' || va == 'H')) {
eq3 = '1';
}
else if (!(vc == 'H' || vi == 'H' || va == 'H')) {
eq3 = '2';
}
// EQ4
let eq4 = '0';
if (si == 'S' || sa == 'S') {
eq4 = '0';
}
else if (!(si == 'S' || sa == 'S') && (sc == 'H' || si == 'H' || sa == 'H')) {
eq4 = '1';
}
else if (!(si == 'S' || sa == 'S') && !(sc == 'H' || si == 'H' || sa == 'H')) {
eq4 = '2';
}
// EQ5
let eq5 = '0';
if (e == 'A' || e == 'X') {
eq5 = '0';
}
else if (e == 'P') {
eq5 = '1';
}
else if (e == 'U') {
eq5 = '2';
}
// EQ6
let eq6 = '0';
const crh = (cr == 'H' || cr == 'X');
const irh = (ir == 'H' || ir == 'X');
const arh = (ar == 'H' || ar == 'X');
if ((crh && vc == 'H') || (irh && vi == 'H') || (arh && va == 'H')) {
eq6 = '0';
}
else if (!(crh && vc == 'H') && !(irh && vi == 'H') && !(arh && va == 'H')) {
eq6 = '1';
}
return eq1 + eq2 + eq3 + eq4 + eq5 + eq6;
}