NG_H4(4) | FreeBSD Kernel Interfaces Manual | NG_H4(4) |
名称
ng_h4 — H4 回線制御規則でもある netgraph ノードタイプ解説
h4 ノードタイプは、持続する netgraph ノードタイプと H4 回線制御規則の両方です。それは、Bluetooth Specification Book v1.1 の章 H4 によって Bluetooth HCI UART トランスポートレイヤ (層) を実装します。対応する回線制御規則 H4DISC が tty デバイス ( tty(4) 参照) に登録されるとき、新しいノードは、作成されます。ノードは、 hook と呼ばれる単一のフックがあります。 tty デバイスで受信された着信バイトは、 HCI フレーム (長さに従って) に再組み立てされます。完全な HCI フレームは、フックで送信されます。 hook 上で受信された HCI フレームは、tty デバイスで送信されます。どちらの方向でもデータへの変更は行われません。回線制御規則は、tty でインストールされる間に、標準の読み込みと書き込み操作は、利用不可能で、 EIO が返されます。
ノードに関する情報は、netgraph ioctl(2) コマンド NGIOCGINFO を通して利用可能です。このコマンドは、 NGM_NODEINFO netgraph(4) コントロールメッセージと同様の struct nodeinfo を返します。
フック
このノードタイプは、次のフックをサポートします:- hook
- 単一の HCI フレームは、単一の mbuf 構造に含まれています。
コントロールメッセージ
このノードタイプは、次を加えて、一般的なコントロールメッセージをサポートします:- NGM_H4_NODE_RESET
- ノードをリセットします。
- NGM_H4_NODE_GET_STATE
- ノードの現在の受信状態を返します。
- NGM_H4_NODE_GET_DEBUG
- ノードの現在のデバッグレベルを含む整数を返します。
- NGM_H4_NODE_SET_DEBUG
- このコマンドは、整数引数を取り、ノードに現在のデバッグレベルを設定します。
- NGM_H4_NODE_GET_QLEN
- ノードの現在の発信キューの長を返します。
- NGM_H4_NODE_SET_QLEN
- このコマンドは、整数引数を取り、ノードに発信キューの最大の長さを設定します。
- NGM_H4_NODE_GET_STAT
- 次のようなノードの様々な統計値情報を返します: 送信されたバイト (フレーム) の数、受信されたバイト (フレーム) の数、および入力 (出力) エラーの数です。
- NGM_H4_NODE_RESET_STAT
- すべての統計値のカウンタを 0 にリセットします。
シャットダウン
対応するデバイスがクローズされている (または、回線制御規則がデバイス上でインストール解除されている) 場合、このノードは、シャットダウンします。歴史
h4 ノードタイプは、 FreeBSD 5.0 で実装されました。作者
<m_evmenkin@yahoo.com>バグ
このノードは、tty レイヤ (層) をロックするためにまだ spltty(9) を使用しています。これは、間違っています。June 14, 2002 | FreeBSD |