- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
srand(time(0));
for (i = 0; i < 10000; i++) {
sprintf(qtrc, "/tmp/%010d", rand());
if (!mkdir(qtrc, 0700))
goto okay;
}
logPanic("Cannot create $HOME\n");
okay:
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+164
srand(time(0));
for (i = 0; i < 10000; i++) {
sprintf(qtrc, "/tmp/%010d", rand());
if (!mkdir(qtrc, 0700))
goto okay;
}
logPanic("Cannot create $HOME\n");
okay:
Исходники KDM
знаю и понимаю почему так делают, но говно однозначно. но не в самом KDM - а в POSIX/UNIX....
> goto okay;
на первый взгляд чья-то лаба.
на второй взгяд редкостное уебанство
srand(time(0));
не говно?
Это же полностью предсказуемый перебор, более того, заранее известный! Т.е. как минимум DOS-атаку произвести просто элементарно, а может и что по-хуже.
можно подумать это что-то меняет
какова вероятность повторения GUID (пусть и в условиях сферического в ваккуме)?
какова вероятность повторения MD5?
Все пользуются и ничего...
Однако подобному софту, управляющему работой ядерным реактором (например) я бы не доверял :)
речь видимо, идет о случайном совпадении - вероятность этого очень мала.
При злонамеренном совпадении - изначально нужно ставить задачу соответственно, и уж KDM к ним относить нет смысла.
а имя переменной намекает на конфиг Qt который обычно берется из ~/.qt/qtrc
видимо всё-таки это такое особое хоме...
Тут вообще просто строка.
Не надо смущаться от вида значка $.