История изменений
Исправление Deleted, (текущая версия) :
Но идея рандома из неинициализированных значений попахивает говном. Мощненько так разит, я бы сказал.
Вот окажутся они на системе, где malloc будет всегда возвращаться зануленный блок памяти - и всё, пирдуха.
Насколько я помню, там всё сложнее, чем просто «рандом из неинициализированной» памяти. Вот не наврать бы сейчас, потому как сам уже не помню... Вроде бы там было два места, где вызывалась сабжевая функция, и неинициализированный буфер там был только на одном вызове (и использовался он только если никаких других источников рандома нет), а на другом - нормальный рандом откуда-то ещё (скорее всего из /dev/urandom, который обычно лучше того, что можно изобразить в юзерспейсе). А в дебиане то ли неправильно поняли вывод валгринда, то ли решили пофиксить сразу вообще всё, то ли как то ещё переклинило голову у них, и они закомментили оба вызова.
Исходная версия Deleted, :
Но идея рандома из неинициализированных значений попахивает говном. Мощненько так разит, я бы сказал.
Вот окажутся они на системе, где malloc будет всегда возвращаться зануленный блок памяти - и всё, пирдуха.
Насколько я помню, там всё сложнее, чем просто «рандом из неинициализированной» памяти. Вот не наврать бы сейчас, потому как сам уже не помню... Вроде бы там было два места, где вызывалась сабжевая функция, и неинициализированный буфер там был только на одном вызове (и использовался он только если никаких других источников рандома нет), а на другом - нормальный рандом откуда-то ещё. А в дебиане то ли неправильно поняли вывод валгринда, то ли решили пофиксить сразу вообще всё, то ли как то ещё переклинило голову у них, и они закомментили оба вызова.