Grsecurity projekta izstrādātāji
Pārbaudot ielāpu, izstrādātāji pamanīja, ka, veidojot, kompilators parāda brīdinājumu par koda un definīciju sajaukšanu (struktūra tika definēta pēc koda, piešķirot vērtību esošam mainīgajam):
int indekss = n;
if (n < HBP_NUM) { indekss = masīva_indekss_nospec(indekss, HBP_NUM); struct perf_event *bp = pavediens->ptrace_bps[indekss];
Linuss pieņēma
if (n < HBP_NUM) { int indekss = masīva_indekss_nospec(n, HBP_NUM); struct perf_event *bp = pavediens->ptrace_bps[indekss];
Jūlijā labojums tika pārnests arī uz stabilajiem kodola zariem 4.4, 4.9, 4.14, 4.19 un 5.2. Arī stabilo filiāļu uzturētāji saskārās ar brīdinājumu un tā vietā, lai pārbaudītu, vai Linusa galvenajā filiālē tas jau nav labots, viņi paši veica labojumu. Problēma ir tā, ka, īsti nedomājot par to, viņi vienkārši
int indekss = n;
if (n < HBP_NUM ){ struct perf_event *bp = pavediens->ptrace_bps[indekss];
indekss = masīvs_indekss_nospec(indekss, HBP_NUM);
Avots: opennet.ru