jpman project specific RCS keyword (jpman %Id) is obsolete, after manual entries are stored in freefall CVS repository. This old Id is useless and more worse it confuses users and bug reporters. So, this old Id is removed. Submitted by:jpman project <man-jp@jp.FreeBSD.org>
99 lines
2.4 KiB
Groff
99 lines
2.4 KiB
Groff
.\" Copyright (c) 1988 Massachusetts Institute of Technology,
|
|
.\" Student Information Processing Board. All rights reserved.
|
|
.\"
|
|
.\" %Header: /home/ncvs/src/lib/libcom_err/com_err.3,v 1.1.1.1 1995/01/14 22:23:41 wollman Exp %
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.\"
|
|
.TH COM_ERR 3 "22 Nov 1988" SIPB
|
|
.SH 名称
|
|
com_err \- 共通エラー表示ルーチン
|
|
.SH 書式
|
|
.nf
|
|
#include <com_err.h>
|
|
.PP
|
|
void com_err (whoami, code, format, ...);
|
|
const char *whoami;
|
|
long code;
|
|
const char *format;
|
|
.PP
|
|
proc = set_com_err_hook (proc);
|
|
.fi
|
|
void (*
|
|
.I proc
|
|
) (const char *, long, const char *, va_list);
|
|
.nf
|
|
.PP
|
|
proc = reset_com_err_hook ();
|
|
.PP
|
|
void initialize_XXXX_error_table ();
|
|
.fi
|
|
.SH 解説
|
|
.I com_err
|
|
は、
|
|
.I whoami
|
|
文字列で構成される標準エラーストリーム
|
|
.I stderr
|
|
.IR (stdio (3S)
|
|
を参照) にエラーメッセージを表示します。
|
|
.I whoami
|
|
文字列は、プログラム名またはプログラムの一部の後に、
|
|
.I code
|
|
値
|
|
.IR (compile_et(1)
|
|
から導出されたもの) から生成されたエラーメッセージ、および
|
|
.IR fprintf (3)
|
|
と同じスタイルで、
|
|
.I format
|
|
文字列と以降の引数を使用して作成された
|
|
文字列が続いたものを指定するはずです。
|
|
|
|
.I com_err
|
|
の動作は、
|
|
.I set_com_err_hook
|
|
を使用して修正できます。これによって、
|
|
.I com_err
|
|
に渡される引数とともに呼び出されるプロシージャが定義されます。
|
|
これは、フォーマットされたテキストを
|
|
エラー出力に送信するデフォルトの内部プロシージャの代わりです。
|
|
このように、プログラムからのエラーメッセージはすべて
|
|
.IR syslog (3)
|
|
のような別の形式の診断ログに簡単に転用できます。
|
|
.I reset_com_err_hook
|
|
を使用して、
|
|
.I com_err
|
|
をデフォルトの形式に復元することもできます。
|
|
いずれのプロシージャも前のフック値を返します。
|
|
これらのフックプロシージャは、上記の書式の
|
|
.I proc
|
|
に指定された宣言がなければなりません。
|
|
|
|
.I initialize_XXXX_error_table
|
|
ルーチンは、名前および対応する文字列の入ったソースファイルから
|
|
.IR compile_et (1)
|
|
が機械的に生成します。
|
|
各テーブルには、最高 4 文字の名前があります。
|
|
この名前はルーチンの名前で
|
|
.B XXXX
|
|
の代わりに使用されます。
|
|
これらのルーチンは、
|
|
対応するエラーコードが使用される前に呼び出す必要があるので、
|
|
.I com_err
|
|
ライブラリは、これらのテーブルが使用されるときに、
|
|
これらのテーブルからエラーコードを認識しようとします。
|
|
|
|
.B com_err.h
|
|
ヘッダファイルは、
|
|
.I com_err
|
|
ライブラリのルーチンを使用するソースファイルに
|
|
インクルードする必要があります。実行可能ファイルは、
|
|
.I com_err
|
|
ライブラリがインクルードされるように、
|
|
.I ``-lcom_err''
|
|
を使用してリンクする必要があります。
|
|
|
|
.SH 関連項目
|
|
.IR compile_et (1),
|
|
.IR syslog (3)
|
|
|
|
Ken Raeburn, "A Common Error Description Library for UNIX".
|