Переменная switch
, не покрытая случаями и случаем по умолчанию, отсутствует
Недостающий случай для условия переключателя происходит, когда переменная switch
может принять значения, которые не покрыты оператором case
.
Средство поиска ошибки только повышает дефект, если переменная переключателя не является полным спектром.
Если переменная switch
принимает значение, которое не покрыто оператором case
, ваша программа может иметь непреднамеренное поведение.
Оператор switch, который принимает решение безопасности, особенно уязвим, когда все возможные значения явным образом не обработаны. Атакующий может использовать эту ситуацию, чтобы отклонить нормальный поток выполнения.
Это - хорошая практика, чтобы использовать оператор default
в качестве вместилища для значений, которые не покрыты оператором case
. Даже если переменная switch
принимает непреднамеренное значение, получившееся поведение может ожидаться.
Группа: безопасность |
Язык: C | C++ |
Значение по умолчанию: 'off' |
Синтаксис командной строки: MISSING_SWITCH_CASE |
Влияние: низко |
ID CWE: 478 |