Grsecurity ပရောဂျက်၏ developer များ
patch ကိုစမ်းသပ်နေစဉ်၊ တည်ဆောက်သည့်အခါတွင်၊ compiler သည် ကုဒ်နှင့်အဓိပ္ပါယ်များ ရောနှောခြင်းဆိုင်ရာ သတိပေးချက်ပြသသည်ကို developer များက သတိပြုမိသည် (ဖွဲ့စည်းပုံသည် ကုဒ်နောက်တွင် သတ်မှတ်လိုက်သည်၊ ရှိပြီးသား variable တစ်ခုသို့ တန်ဖိုးတစ်ခုသတ်မှတ်ခြင်းဖြစ်သည်)။
int အညွှန်း = n;
အကယ်၍ (n < HBP_NUM) { index = array_index_nospec(index, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];
Linus လက်ခံတယ်။
if (n < HBP_NUM) { int index = array_index_nospec(n, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];
ဇူလိုင်လတွင်၊ ပြင်ဆင်ချက်သည် တည်ငြိမ်သော kernel အကိုင်းအခက် 4.4၊ 4.9၊ 4.14၊ 4.19 နှင့် 5.2 သို့လည်း ပေးပို့ခဲ့သည်။ တည်ငြိမ်သောအကိုင်းအခက်များ၏ထိန်းသိမ်းသူများသည်သတိပေးချက်ကိုလည်းကြုံတွေ့ရပြီး Linus ၏ပင်မအကိုင်းအခက်တွင်ပြုပြင်ပြီးသားရှိမရှိစစ်ဆေးမည့်အစား၊ ၎င်းတို့ကိုယ်တိုင်ပြင်ဆင်မှုပြုလုပ်ခဲ့သည်။ ပြဿနာက အဲဒါကို တကယ်မစဉ်းစားဘဲ၊
int အညွှန်း = n;
if (n < HBP_NUM ){ struct perf_event *bp = thread->ptrace_bps[index];
အညွှန်း = array_index_nospec(အညွှန်း၊ HBP_NUM);
source: opennet.ru