ネットワークインタフェース

データグラムエラー

トランスポートプロバイダが t_sndudata(3NSL) によって送られたデータグラムの処理を行えない場合、ユーザーにユニットデータエラーイベント T_UDERR を戻します。このイベントにはエラーを識別するため、データグラムの宛先アドレスとオプション、プロトコル固有エラー値が含まれます。データグラムのエラーはプロトコル固有 (専用) のものです。


注 -

ユニットデータエラーイベントは指定された宛先へのデータグラム転送の成功または失敗を必ずしも示しません。コネクションレスサービスはデータの確実な転送を保証していないことを覚えておいてください。


別のデータグラムの受信を行おうとした場合トランザクションサーバーにはエラーが通知されます。この場合、t_rcvudata(3NSL) は失敗し、t_errnoTLOOK に設定されます。TLOOK が設定されている場合、発生の可能性のあるイベントは T_UDERR のみであることから、サーバーはイベントの取り出しを行うため t_rcvudata(3NSL) を呼び出します。t_rcvuderr(3NSL) の 2 番目の引数は事前に割り当てられている t_uderr 構造体です。この構造体は t_rcvuderr(3NSL) によって格納され、次の形式です。

struct t_uderr {
 	struct netbuf addr;
 	struct netbuf opt;
 	t_scalar_t error;
}

addr および opt は不正なデータグラムで指定された宛先アドレスおよびプロトコルオプションを特定し、error はプロトコル固有のエラーコードです。トランザクションサーバーはエラーコードを出力し、処理を継続します。