Oracle® Solaris 11.2 デバイスドライバの記述

印刷ビューの終了

更新: 2014 年 9 月
 
 

GLDv2 の入出力制御関数

GLDv2 は、ここで説明する ioctl ioc_cmd 関数を実装します。認識できない ioctl コマンドを受信した場合、gld(9E) で説明しているように、GLDv2 はそのコマンドをデバイス固有ドライバの gldm_ioctl() ルーチンに渡します。

DLIOCRAW ioctl 関数は、snoop(1M) コマンドをはじめとした一部の DLPI アプリケーションで使用されます。DLIOCRAW コマンドはストリームを raw モードにします。raw モードでは、ドライバはパケットを DL_UNITDATA_IND 形式に変換せずに、MAC レベルの着信パケットをそのまま M_DATA メッセージでアップストリームに渡します。DL_UNITDATA_IND 形式は、通常時に着信パケットの報告に使用されます。パケットの SAP フィルタリングは、raw モードのストリームに対しても実行されます。ストリームのユーザーがすべての着信パケットの受信を求める場合、ユーザーは適切なプロミスキュアス (promiscuous) モードを選択する必要もあります。raw モードの選択に成功したあとも、アプリケーションは完全形式のパケットを、転送用の M_DATA メッセージとしてドライバに送信できます。DLIOCRAW には引数がありません。いったん raw モードが有効になると、ストリームを閉じるまでモードは変化しません。