The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Обновление libpng 1.6.27 с устранением уязвимости"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Обновление libpng 1.6.27 с устранением уязвимости" +/
Сообщение от Аноним (-), 30-Дек-16, 17:29 
> Но вообще все давно в курсе, что scanf - не идеал ни
> разу, и обычно лучше применять отдельное строки и strtoX()

Не идеал, если требуется распарсить строку согласно форматированию, либо если вводится строка (возможность переполнения, лечащаяся модификатором максимальной длины строки, например, %99s), - но для ввода числа вполне подходит.

Для strtoX прийдётся так или иначе реализовывать чтение данных с потока ввода (но уже своими силами), но это мало что даёт. Мало того, при использовании strtoX можно столкнуться с большой проблемой. С одной стороны всё равно нужно анализировать errno на ошибки, а с другой errno выставляется при значении, равном 0. Но откуда мы знаем, что errno в этом случае был выставлен именно нашим вызовом, а а не вызовом из сторонней библиотеки, в код которой мы даже не заглядывали. А может быть он вообще остался в том же значении ещё с прошлого вызова нашей же функции, а пользователь просто ввёл 0.

Увы, я уже видел достаточно примером кода, где ошибки игнорируют, используют небезопасные функции, либо используют стиль обработки ошибок lazy (assert по любой ошибке). А основной причиной является стандартизация небезопасных функций, которые просто исторически используются и от которых уже невозможно отказаться без потери обратной совместимности.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Обновление libpng 1.6.27 с устранением уязвимости, opennews, 30-Дек-16, 10:54  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру