• 検索結果がありません。

コールバック

ドキュメント内 NORTi Version 4 ユーザーズガイド・TCP/IP編 (ページ 82-85)

ノンブロッキングコールの完了

機能 ノンブロッキングコールの完了通知

形式 ER callback(ID cepid, FN fncd, VP parblk);

cepid TCPまたはUDP通信端点ID

fncd 終了したサービスコールの機能コード

parblk エラーコードが格納されている領域へのポインタ

戻値 戻り値は未使用 (0)

解説 ノンブロッキングコールの処理が完了した、あるいは、キャンセルされた場合に、プロト コルスタックから呼び出されます。

parblkは、ER ercd = *(ER *)parblk とキャストしてアクセスしてください。ここには、

サービスコールへ返すべきだったエラーコードが格納されています。

上記形式において、callback と表現さているのは、TCP通信端点生成時にユーザーが定義 したコールバックルーチンで、その関数名は任意です

サービスコールの機能コード:

TFN_TCP_ACP_CEP (-0x205) tcp_acp_cep 完了通知 TFN_TCP_CON_CEP (-0x206) tcp_con_cep 完了通知 TFN_TCP_CLS_CEP (-0x208) tcp_cls_cep 完了通知 TFN_TCP_SND_DAT (-0x209) tcp_snd_dat 完了通知 TFN_TCP_RCV_DAT (-0x20a) tcp_rcv_dat 完了通知 TFN_TCP_GET_BUF (-0x20b) tcp_get_buf 完了通知 TFN_TCP_RCV_BUF (-0x20d) tcp_rcv_buf 完了通知 TFN_UDP_SND_DAT (-0x223) udp_snd_dat 完了通知 TFN_UDP_RCV_DAT (-0x224) udp_rcv_dat 完了通知

緊急データの受信

機能 緊急データの受信通知

形式 ER callback(ID cepid, FN fncd, VP parblk);

cepid TCP通信端点ID fncd TEV_TCP_RCV_OOBのみ

parblk 緊急データの長さが格納されている領域へのポインタ

戻値 戻り値は未使用 (0)

解説 緊急データを受信した場合に呼び出されます。コールバックルーチンの中でtcp_rcv_oobを 使って緊急データを取り出す必要があります。取り出さずにコールバックルーチンからリ ターンすると、緊急データは捨てられます。

parblkは、INT len = *(INT *)parblkとキャストしてアクセスしてください。ここには、

緊急データ長が格納されています。

上記形式において、callbackと表現さているのは、ノンブロッキングコール完了通知用の 関数と同じものです。

※現バージョンでは、tcp_rcv_oob をサポートしていません。

UDP パケットの受信

機能 UDPパケットの受信通知

形式 ER callback(ID cepid, FN fncd, VP parblk);

cepid UDP通信端点ID fncd TEV_UDP_RCV_DATのみ

parblk パケットの長さが格納されている領域へのポインタ

戻値 戻り値は未使用 (0)

解説 udp_rcv_datがペンディングしていない状態で、すなわち、UDPの受信要求がキューイング

されていない状態で、UDP パケットを受信した場合に呼び出されます。コールバックルー チンの中でudp_rcv_datを使って受信パケットを取り出す必要があります。取り出さずに コールバックルーチンからリターンすると、受信パケットは捨てられます。

parblkは、INT len = *(INT *)parblkとキャストしてアクセスしてください。ここには、

受信パケットの長さが格納されています。

上記形式において、callback と表現さているのは、UDP通信端点生成時にユーザーが定義 したコールバックルーチンで、その関数名は任意です。

ドキュメント内 NORTi Version 4 ユーザーズガイド・TCP/IP編 (ページ 82-85)

関連したドキュメント