errno
не сбрасываться перед вызовом функции, которая устанавливает errno
Этот дефект возникает, когда вы не сбрасываете errno
перед вызовом функции, которая устанавливает errno
для указания условий ошибки. Однако вы проверяете errno
для условий ошибки после вызова функции.
The errno
не является чистым и может содержать значения от предыдущего вызова. Проверка errno
ошибки могут создать ложное впечатление, что произошла ошибка.
errno
устанавливается в нуль при запуске программы, но впоследствии errno
не сбрасывается функцией стандартной библиотеки на C. Вы должны явным образом задать errno
до нуля при необходимости.
Перед вызовом функции, которая устанавливает errno
чтобы указать условия ошибки, сбросьте errno
явным образом обнулить.
Группа: Программирование |
Язык: C | C++ |
По умолчанию: On для рукописного кода, off для сгенерированного кода |
Синтаксис командной строки: MISSING_ERRNO_RESET |
Влияние: Высокий |
ИДЕНТИФИКАТОР CWE: 253, 456, 703 |
Errno not checked
| Find defects (-checkers)
| Misuse of errno
| Returned value of a sensitive function not checked