5.3.8 n_error

<この項の構成>
(1) 機能概要
(2) 構文
(3) 設定情報
(4) リターン情報
(5) 特記事項
(6) 表示例

(1) 機能概要

関数実行中に生じた,エラー番号に対応するエラーメッセージを標準エラー出力に出力します。

(2) 構文

#include <xnfw/niuser.h>
extern int n_errno;
extern char *n_errlist[];
extern int n_err;
void n_error(errmsg);
char *errmsg;

(3) 設定情報

(a) errmsg

ユーザが出力したい文字列を指定します。

(4) リターン情報

標準エラー出力にエラーメッセージを出力します。

(5) 特記事項

  1. n_errlistは,エラーに対応するメッセージ文字列の配列であり,n_errnoをインデックスとして使用します。
  2. n_errは,n_errlistテーブルで提供されるメッセージの最大番号です。
  3. n_errnoは,エラーが発生したときだけエラー番号が設定され,クリアされません。

(6) 表示例

n_connect関数が,ネットワーク端点fd2で不正なアドレスが与えられたため,異常終了(n_errno=NBADADDR)し,続いて次のようにこの関数が呼ばれたとします。

 n_errno(" n_connect failed on fd2 ");

このとき,出力される診断メッセージは次のようになります。

 n_connect failed on fd2:incorrect address format

エラーメッセージ一覧を表5-3に示します。

表5-3 エラーメッセージ一覧

エラー番号エラーメッセージ
NBADFillegal network fd
NOUTSTATEout of state
NNODATAno data
NNOTSUPPORTprimitive/action not supported
NBADOPTincorrect option format
NBADFLAGincorrect flag
NBADSEQbad call sequence number
NBADDATAillegal amount of data
NBADADDRincorrect addr format
NACCESSincorrect permissions
NBUFOVFLWbuffer not large enough
NFLOWflow control
NLOOKevent requires attention
NNODISdiscon_ind not found on queue
NSTATECHNGstate is in process of changin
NSYSERRsystem error
NCOMERRcommunication error
NEPARAMparameter error
NOVRCONover permitted connection number