EN JP CN

Klocwork 2017.2 の新機能

Klocwork 2017.2 の新機能

以下は Klocwork 2017.2 の新機能です。アップグレードする場合、Klocwork の使用方法に影響を与える項目については、制限事項も参照してください。

品質レポート

このリリースでは、新しい品質レポートを導入しました。セキュリティレポートと同様に、新しい品質レポートでは、選択された Klocwork 品質標準分類基準の 1 ページのサマリーを含むプロジェクトのヘルスチェックを提供します。上位 3 つの欠陥、品質の問題が最も多いソースコードディレクトリのトレンドなどの項目をレビューします。詳細については、レポートタイプを参照してください。

品質レポートと共に、Klocwork 品質標準分類基準はプロジェクトの品質を管理するための迅速かつ容易な方法を提供します:

Microsoft Visual Studio 機能拡張

重要度やステータス別に指摘をフィルターできるようにするため、2 つの指摘フィルターを追加しました。このステータスフィルターは「無視した指摘を表示」フィルターを置き換えるものであり、あらゆるステータスで指摘をフィルターできる機能を提供します。詳細については、Klocwork Desktop Plug-in for Visual Studio のヒントと方法を参照してください。

DISA-STIG バージョン 4 の分類基準

DISA-STIG バージョン 4 のサポートを追加しました。詳細については、DISA STIG バージョン 4 の ID と Klocwork C および C++ チェッカーのマッピングおよび DISA STIG バージョン 4 の ID とKlocwork Java チェッカーのマッピングを参照してください。

サポートされているコンパイラの改善

以下のコンパイラについてサポートを開始しました。

  • Renesas CC-RL
次のコンパイラのサポート機能を改善しました。
  • TI tms320c28x

サポートされる C/C++ コンパイラの全リストについては、ビルド統合でサポートされる C/C++ コンパイラを参照してください。

ライセンス

Klocwork 2017 の最初のリリースでは、Windows、Linux、Mac プラットフォームでサポートされる FlexNet Publisher のバージョンをアップグレードしました。バージョン 2016 R1 (11.14.0.2) をサポートします。このアップグレードには多数のセキュリティ更新が含まれており、FlexNet Publisher 11.10.0 の NIC 命名制限が削除されています。AIX および Sun Solaris で使用されている FlexNet Publisher のバージョンは変更されていません。

独自の FlexNet Publisher ライセンスサーバーを使用している場合は、Windows、Linux、および Mac での Klocwork 2017.2 の インストールは、FlexNet Publisher 2016 R1 (11.14.0.2) 以降と互換性があります。以前のバージョンの FlexNet Publisher は互換性がありません。このため、たとえば、Windows マシン上の Klocwork 統合ビルド解析では、Solaris または AIX 上で動作するライセンスサーバーからライセンスをチェックアウトすることはできません。

パス API の変更

Klocwork 2016 では、パス API の C++ バージョンについても、数多くの変更が加えられました。「Klocwork C/C++ Path Analysis API Reference(Klocwork C/C++ パス解析 API リファレンス)」の第 2 章には非推奨関数がリストアップされており、それぞれについて代替の関数が記載されています。このリリースでは、非推奨関数を使用すると、コンパイラ警告ではなくコンパイラエラーが発生します。

当社では 2017年に Path API の C バージョンを完全にリタイアさせることを計画しています。このため、廃止された関数を使用している場合は、サポート対象関数に今すぐ移行することをお勧めします。詳細については、Path API バージョン 11.2 からの重大な変更内容を参照してください。

チェッカーの改善

リリースを重ねるたびに、当社は指摘検出を改善して最先端の機能をお客様に提供しています。結果として、精度とカバレッジが向上すると、解析結果は変わると予想されます。

新しいチェッカー

次のチェッカーを追加しました。

チェッカー説明

MISRA.EXPR.SIZEOF.ARRAY_PARAM.2012_AMD1

MISRA C 2012 規則 12.5 の実装:sizeof 演算子は「配列型」として宣言された関数パラメータとなっているオペランドを有しません。

MISRA.ELIF.COND.NOT_BOOL.2012

MISRA.IF.COND.NOT_BOOL.2012

MISRA C 2012 規則 20.8 の実装:#if または #elif 前処理ディレクティブの制御式は 0 または 1 に評価されます。

変更されたチェッカー

次のチェッカーを変更しました。

チェッカー影響度
MISRA.LITERAL.NULL.PTR.CONST.2012誤検知が少なくなることが期待されています。
NPE.RET 誤検知が少なくなることが期待されています。

チェッカーの有効/無効を切り替える

このリリースでチェッカー構成ファイルのデフォルトの enabled フィールドは変更されていません。

分類基準の改善

インストールの一部として、チェッカーを MISRA、CWE、OWASP、DISA STIG などの規格にマップするカスタム分類基準ファイルがいくつか提供されています。以下に、このリリースでの分類基準ファイルの変更のリストを示します。
注: 従来のリリースでカスタム分類基準(例えば MISRA)をインポートしている場合は、新しい分類基準ファイルをインポートして変更を反映させてください。
分類基準ファイル このリリースにおける変更
disa_stig_v4_cxx.tconf および disa_stig_v4_cxx_ja.tconfこれは、Klocwork C/C++ チェッカーを DISA-STIG バージョン 4 にマップする新しい分類基準です。
disa_stig_v4_java.tconf および disa_stig_v4_java_ja.tconfこれらは、Klocwork Java チェッカーを DISA-STIG バージョン 4 にマップする新しい分類基準です。
kw_quality_std_cs.tconf および kw_quality_std_cs_ja.tconfこれらの新しい Klocwork 品質標準分類基準は C# プロジェクトの品質管理に役立ち、新しい品質レポートと共に使用することができます。
kw_quality_std_cxx.tconf および kw_quality_std_cxx_ja.tconfこれらの新しい Klocwork 品質標準分類基準は C/C++ プロジェクトの品質管理に役立ち、新しい品質レポートと共に使用することができます。
kw_quality_std_java.tconf および kw_quality_std_java_ja.tconfこれらの新しい Klocwork 品質標準分類基準は Java プロジェクトの品質管理に役立ち、新しい品質レポートと共に使用することができます。
misra_c_2012_c90.tconf および misra_c_2012_c90_ja.tconf

次のチェッカーを追加しました

  • MISRA.ELIF.COND.NOT_BOOL.2012 (規則 20.8)
  • MISRA.IF.COND.NOT_BOOL.2012 (規則 20.8)
misra_c_2012_c99.tconf および misra_c_2012_c99_ja.tconf

次のチェッカーを追加しました

  • MISRA.ELIF.COND.NOT_BOOL.2012 (規則 20.8)
  • MISRA.IF.COND.NOT_BOOL.2012 (規則 20.8)
misra_c_2012_with_amd1_c90.tconf および misra_c_2012_with_amd1_c90_ja.tconf

次のチェッカーを追加しました

  • MISRA.EXPR.SIZEOF.ARRAY_PARAM.2012_AMD1 (規則 12.5)
  • MISRA.ELIF.COND.NOT_BOOL.2012 (規則 20.8)
  • MISRA.IF.COND.NOT_BOOL.2012 (規則 20.8)
misra_c_2012_with_amd1_c99.tconf および misra_c_2012_with_amd1_c99_ja.tconf

次のチェッカーを追加しました

  • MISRA.EXPR.SIZEOF.ARRAY_PARAM.2012_AMD1 (規則 12.5)
  • MISRA.ELIF.COND.NOT_BOOL.2012 (規則 20.8)
  • MISRA.IF.COND.NOT_BOOL.2012 (規則 20.8)
Owasp_2013_10_java.tconf およびand owasp_2013_10_java_ja.tconf

次のチェッカーを追加しました

A6 機密データの漏洩

  • SV.SENSITIVE.DATA
  • SV.SENSITIVE.OBJ

A8 クロスサイトリクエストフォージェリ (CSRF)

  • SV.CSRF.GET
  • SV.CSRF.ORIGIN
  • SV.CSRF.TOKEN

システム要件の変更

このセクションでは、システム要件の変更を一覧表示します。次のサポートを追加しました。
  • Microsoft Edge 40.15063

コマンドおよびオプションへの変更

このリリースのコマンドまたはコマンドオプションに変更はありません。Klocwork コマンドの詳細については、コマンド リファレンスを参照してください。