Вызывается стандартная строковая функция библиотеки с недопустимыми аргументами
Этот дефект возникает, когда вызывается функция библиотеки строк с недопустимыми аргументами.
Риск зависит от типа недопустимых аргументов. Например, использование strcpy
функция с исходным аргументом, большим, чем конечный аргумент, может привести к переполнению буфера.
Исправление зависит от стандартной функции библиотеки, участвующей в дефекте. В некоторых случаях можно ограничить аргументы функции перед вызовом функции. Для образца, если strcpy
функция:
char * strcpy(char * destination, const char* source)
strcpy
. В некоторых случаях можно использовать альтернативную функцию, чтобы избежать ошибки. Для образца вместо strcpy
, можно использовать strncpy
для управления количеством скопированных байтов. Смотрите также Результаты интерпретации Bug Finder в интерфейсе пользователя Polyspace Desktop.См. примеры исправлений ниже.
Если вы не хотите устранять проблему, добавьте комментарии к своему результату или коду, чтобы избежать другой проверки. Смотрите Адрес Результаты Polyspace через исправления ошибок или обоснования.
Группа: Статическая память |
Язык: C | C++ |
По умолчанию: On |
Синтаксис командной строки: STR_STD_LIB |
Влияние: Высокий |
ИДЕНТИФИКАТОР CWE: 120, 227, 690 |