JavaScript is not currently enabled, but is required for full CodeSonar manual search and browse functionality.
If you are viewing this file in your hub's Web GUI, enable JavaScript in your browser: you will also need it for GUI functionality.
If you opened this file directly from disk, your browser may be directly suppressing JavaScript functionality: certain browsers perform this suppression on local files (but not files delivered by web servers) for security reasons.
| CodeSonar® 9.0p0 Hot Tips | CONFIDENTIAL | CodeSecure Inc |
このワーニングは、シグナルハンドラエントリーポイント に該当する全ての箇所で検出されます。
このクラスは診断の目的で提供されており、コードの脆弱性とは関係ありません。このクラスを有効にすると、以下の場合に役立ちます。
| クラス名 | Signal Handler Entry Point |
|---|---|
| 日本語クラス名 | シグナルハンドラエントリーポイント |
| クラス分類 | 診断 (diagnostic) |
| ニーモニック | DIAG.SIGHAND.ENTRY |
| カテゴリー | なし |
| 対応言語 | C および C++ で利用可能です。 |
| 有効/無効設定 | このワーニングクラスのチェックはデフォルトで無効になっています。チェックを有効にするにはプロジェクト設定ファイル
(configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += allow class="Signal Handler Entry Point" このワーニングクラスは、コード内の問題に対する警告検出というより、診断解析を目的としています。 その為、通常はCodeSonarのpresetsで有効になることはありません。特に、all_warningclasses presetでさえも、有効にはなりませんことを留意して下さい。 |
#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: スレッドエントリーポイント を参照してください。
設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。