C and C++ Binaries


DIAG.SIGHAND.ENTRY : シグナルハンドラエントリーポイント

要旨

このワーニングは、シグナルハンドラエントリーポイント に該当する全ての箇所で検出されます。

このクラスは診断の目的で提供されており、コードの脆弱性とは関係ありません。このクラスを有効にすると、以下の場合に役立ちます。

プロパティ

クラス名 Signal Handler Entry Point
日本語クラス名 シグナルハンドラエントリーポイント
クラス分類 診断 (diagnostic)
ニーモニック DIAG.SIGHAND.ENTRY
カテゴリー なし
対応言語 C および C++ で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで無効になっています。チェックを有効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += allow class="Signal Handler Entry Point"

#include <signal.h>

void handle(int s){}

void reg(void (*f)(int)){
    signal(SIGABRT, f); /* 'Signal Handler Entry Point' warning issued here */
}

void start(){
    reg(handle);
}

注釈

Signal Handler Entry Point warnings can be triggered by any function treated as a signal handler entry point function by CodeSonar:

CodeSonar がどのようにシグナルハンドラを扱うかに関しては Concurrency Models: スレッドエントリーポイント を参照してください。

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。