nl :: Inet :: TunEndPoint

#include <src/inet/TunEndPoint.h>

このクラスのオブジェクトは、トンネルインターフェイスを表します。

概要

Nest Inet Layerは、POSIXシステムとLwIPシステムの両方で相互作用するためのメソッドを、WeaveトンネルエージェントをサポートするためのIP-in-IPトンネリングメカニズムでカプセル化します。

継承

:から継承NL :: Inetの:: EndPointBasis

パブリックタイプ

@11列挙型
基礎となるトンネルの基本的な動的状態。
OnPacketReceivedFunct )(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) typedef
void(*
パケット受信イベントハンドラーのタイプ。
OnReceiveErrorFunct )(TunEndPoint *endPoint, INET_ERROR err) typedef
void(*
エラーイベントハンドラーのタイプ。
RouteOp {
kRouteTunIntf_Add = 0,
kRouteTunIntf_Del = 1
}
列挙型
トンネルインターフェースへのルート設定時の操作。
RouteOp typedef
トンネルインターフェースへのルート設定時の操作。

パブリック属性

OnPacketReceived
エンドポイントのパケット受信イベントハンドラデリゲート。
OnReceiveError
mAppState
void *
アプリケーション固有の状態オブジェクトへのポインター。
mState
enum nl::Inet::TunEndPoint::@11
基礎となるトンネルの基本的な動的状態。

公の行事

Free (void)
void
トンネルを閉じて、オブジェクトのハンドルを解放します。
GetTunnelInterfaceId (void)
InterfaceId
トンネルインターフェース識別子を取得します。
Init ( InetLayer *inetLayer)
void
トンネルEndPointオブジェクトを初期化します。
InterfaceDown (void)
トンネルインターフェースを非アクティブ化します。
InterfaceUp (void)
トンネルインターフェースをアクティブにします。
IsInterfaceUp (void) const
bool
トンネルインターフェースのアクティブ化状態を抽出します。
Open (void)
トンネル疑似インターフェースを開き、それへのハンドルを作成します。
Open (const char *intfName)
Send ( Weave::System::PacketBuffer *message)
送信するtunデバイスにIPv6パケットを送信します。

パブリックタイプ

@ 11

 @11

基礎となるトンネルの基本的な動的状態。

オブジェクトは「開いた」状態で初期化され、リサイクルの準備ができたら「閉じた」状態に進みます。

OnPacketReceivedFunct

void(* OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message)

パケット受信イベントハンドラーのタイプ。

トンネルからのIPv6パケットの受信時に動作する上位層へのデリゲートのタイプ。

詳細
パラメーター
[in] endPoint
ポインタTunEndPointのオブジェクト。
[in] message
ポインタ織り::システム:: PacketBufferのメッセージオブジェクト。

OnReceiveErrorFunct

void(* OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err)

エラーイベントハンドラーのタイプ。

トンネルからのIPv6パケットのエラー処理に対応するための上位層へのデリゲートのタイプ。

詳細
パラメーター
[in] endPoint
TunEndPointのオブジェクト。
[in] err
エラーコードが報告されました。

RouteOp

 RouteOp

トンネルインターフェースへのルート設定時の操作。

この列挙型の値は、カプセル化されたトンネルのルートを設定するときに使用されます。

プロパティ
kRouteTunIntf_Add

プレフィックスのルートを追加します。

kRouteTunIntf_Del

プレフィックスのルートを削除します。

RouteOp

enum nl::Inet::TunEndPoint::RouteOp RouteOp

トンネルインターフェースへのルート設定時の操作。

この列挙型の値は、カプセル化されたトンネルのルートを設定するときに使用されます。

パブリック属性

OnPacketReceived

OnPacketReceivedFunct OnPacketReceived

エンドポイントのパケット受信イベントハンドラデリゲート。

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

アプリケーション固有の状態オブジェクトへのポインター。

mState

enum nl::Inet::TunEndPoint::@11 mState

基礎となるトンネルの基本的な動的状態。

オブジェクトは「開いた」状態で初期化され、リサイクルの準備ができたら「閉じた」状態に進みます。

公の行事

自由

void Free(
  void
)

トンネルを閉じて、オブジェクトのハンドルを解放します。

トンネル擬似インタフェース装置を閉じ、参照カウントデクリメントInetLayerのオブジェクト。

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

トンネルインターフェース識別子を取得します。

詳細
戻り値
トンネルインターフェース識別子。

初期化

void Init(
  InetLayer *inetLayer
)

トンネルEndPointオブジェクトを初期化します。

詳細
パラメーター
[in] inetLayer
トンネルエンドポイントを作成したInetレイヤーオブジェクトへのポインター。

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

トンネルインターフェースを非アクティブ化します。

詳細
戻り値
INET_NO_ERROR
成功:トンネルインターフェースが非アクティブ化されます。
other
別のシステムまたはプラットフォームのエラー

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

トンネルインターフェースをアクティブにします。

詳細
戻り値
INET_NO_ERROR
成功:トンネルインターフェースがアクティブ化されます。
other
別のシステムまたはプラットフォームのエラー

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

トンネルインターフェースのアクティブ化状態を抽出します。

詳細
戻り値
trueトンネルインターフェースが、そうでなければアクティブである場合にfalse

開いた

INET_ERROR Open(
  void
)

トンネル疑似インターフェースを開き、それへのハンドルを作成します。

詳細
戻り値
成功した場合はINET_NO_ERROR、それ以外の場合は対応するINETマップOSエラー。

開いた

INET_ERROR Open(
  const char *intfName
)

送信

INET_ERROR Send(
  Weave::System::PacketBuffer *message
)

送信するtunデバイスにIPv6パケットを送信します。

詳細
パラメーター
[in] message
送信するIPv6パケット。
戻り値
INET_NO_ERROR
成功:パケットがカプセル化され、送信するためにキューに入れられました
INET_ERROR_NOT_SUPPORTED
IPバージョン6ではないパケット
INET_ERROR_BAD_ARGS
messageあるNULLポインタ