VOIDRET

void 関数によって値が返されます

VOIDRET チェッカーは、ある値を返す void 関数として宣言された関数を検出します。

脆弱性とリスク

これは、通常、スタイルに関係する指摘ですが、論理的な問題がコードに含まれていることもあります。

脆弱コード例

1  class A{
2     void foo();
3  };
4  void A::foo()
5  {
6    return 0;
7  }

Klocwork は、void 関数 foo() から値が返される 6 行目にフラグを立てます。

セキュリティトレーニング

Secure Code Warrior が提供しているアプリケーションセキュリティトレーニング教材。