nl::Inet::TunEndPoint

#include <src/inet/TunEndPoint.h>

Objekte dieser Klasse stellen Tunnelschnittstellen dar.

Zusammenfassung

Nest Inet Layer kapselt Methoden für die Interaktion sowohl auf POSIX-Systemen als auch auf LwIP-Systemen mit einem IP-in-IP-Tunneling-Mechanismus zur Unterstützung des Weave-Tunnel-Agents.

Übernahme

Übernimmt von: nl::Inet::EndPointBasis

Öffentliche Typen

@11 enum
Dynamischer Grundstatus des zugrunde liegenden Tunnels.
OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) typedef.
void(*
Typ des Event-Handlers für den Paketempfang.
OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err) typedef.
void(*
Typ des Fehler-Event-Handlers.
RouteOp{
  kRouteTunIntf_Add = 0,
  kRouteTunIntf_Del = 1
}
enum
Vorgang beim Festlegen der Route zur Tunnelschnittstelle.
RouteOp typedef.
Vorgang beim Festlegen der Route zur Tunnelschnittstelle.

Öffentliche Attribute

OnPacketReceived
Der Bevollmächtigte des Event-Handler-Paketempfängers für den Empfang von Paketen.
OnReceiveError
mAppState
void *
Zeiger auf anwendungsspezifisches Statusobjekt.
mState
enum nl::Inet::TunEndPoint::@11
Dynamischer Grundstatus des zugrunde liegenden Tunnels.

Öffentliche Funktionen

Free(void)
void
Schließen Sie den Tunnel und lassen Sie den Griff am Objekt los.
GetTunnelInterfaceId(void)
InterfaceId
Rufen Sie die Tunnelschnittstellen-ID ab.
Init(InetLayer *inetLayer)
void
Initialisieren Sie das Tunnel EndPoint-Objekt.
InterfaceDown(void)
Deaktivieren Sie die Tunnelschnittstelle.
InterfaceUp(void)
Aktivieren Sie die Tunnelschnittstelle.
IsInterfaceUp(void) const
bool
Extrahieren Sie den Aktivierungsstatus der Tunnelschnittstelle.
Open(void)
Öffnen Sie eine Tunnel-Pseudoschnittstelle und erstellen Sie einen Handle dafür.
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
Senden Sie ein IPv6-Paket an das Feinabstimmungsgerät, das gesendet werden soll.

Öffentliche Typen

@11

 @11

Dynamischer Grundstatus des zugrunde liegenden Tunnels.

Objekte werden in „offen“ initialisiert. klicken Sie auf die Schaltfläche „Geschlossen“, wenn sie recycelbar sind.

OnPacketReceivedFunct

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

Typ des Event-Handlers für den Paketempfang.

Delegationstyp an eine höhere Ebene, der nach dem Empfang eines IPv6-Pakets vom Tunnel agiert.

Details
Parameter
[in] endPoint
Ein Zeiger zum Objekt TunEndPoint.
[in] message
Ein Verweis auf das Nachrichtenobjekt Weave::System::PacketBuffer.

OnReceiveErrorFunct

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

Typ des Fehler-Event-Handlers.

Delegattyp an eine höhere Ebene, der auf einen Fehler bei der Verarbeitung eines IPv6-Pakets aus dem Tunnel reagiert.

Details
Parameter
[in] endPoint
Das Objekt TunEndPoint.
[in] err
Fehlercode gemeldet.

RouteOp

 RouteOp

Vorgang beim Festlegen der Route zur Tunnelschnittstelle.

Werte dieses Enum-Typs werden verwendet, wenn eine Route für den eingekapselten Tunnel festgelegt wird.

Attribute
kRouteTunIntf_Add

Fügen Sie eine Route für ein Präfix hinzu.

kRouteTunIntf_Del

Entfernen Sie eine Route für ein Präfix.

RouteOp

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

Vorgang beim Festlegen der Route zur Tunnelschnittstelle.

Werte dieses Enum-Typs werden verwendet, wenn eine Route für den eingekapselten Tunnel festgelegt wird.

Öffentliche Attribute

OnPacketReceived

OnPacketReceivedFunct OnPacketReceived

Der Bevollmächtigte des Event-Handler-Paketempfängers für den Empfang von Paketen.

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

Zeiger auf anwendungsspezifisches Statusobjekt.

mState

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

Dynamischer Grundstatus des zugrunde liegenden Tunnels.

Objekte werden in „offen“ initialisiert. klicken Sie auf die Schaltfläche „Geschlossen“, wenn sie recycelbar sind.

Öffentliche Funktionen

Kostenlos

void Free(
  void
)

Schließen Sie den Tunnel und lassen Sie den Griff am Objekt los.

Schließen Sie das Tunnel-Pseudoschnittstellengerät und verringern Sie die Referenzanzahl des InetLayer-Objekts.

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

Rufen Sie die Tunnelschnittstellen-ID ab.

Details
Rückgabe
Die Tunnelschnittstellen-ID.

Init

void Init(
  InetLayer *inetLayer
)

Initialisieren Sie das Tunnel EndPoint-Objekt.

Details
Parameter
[in] inetLayer
Ein Zeiger auf das Inet-Ebenenobjekt, mit dem der Tunnel-Endpunkt erstellt wurde.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

Deaktivieren Sie die Tunnelschnittstelle.

Details
Rückgabewerte
INET_NO_ERROR
Erfolg: Tunnelschnittstelle ist deaktiviert.
other
anderer System- oder Plattformfehler

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

Aktivieren Sie die Tunnelschnittstelle.

Details
Rückgabewerte
INET_NO_ERROR
Erfolg: Tunnelschnittstelle ist aktiviert.
other
anderer System- oder Plattformfehler

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

Extrahieren Sie den Aktivierungsstatus der Tunnelschnittstelle.

Details
Rückgabe
true, wenn die Tunnelschnittstelle aktiv ist, andernfalls false.

Öffnen

INET_ERROR Open(
  void
)

Öffnen Sie eine Tunnel-Pseudoschnittstelle und erstellen Sie einen Handle dafür.

Details
Rückgabe
INET_NO_ERROR bei Erfolg, sonst ein entsprechender Fehler des zugeordneten INET-Betriebssystems.

Öffnen

INET_ERROR Open(
  const char *intfName
)

Senden

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

Senden Sie ein IPv6-Paket an das Feinabstimmungsgerät, das gesendet werden soll.

Details
Parameter
[in] message
das zu sendende IPv6-Paket.
Rückgabewerte
INET_NO_ERROR
Erfolg: Paket gekapselt und zum Senden in die Warteschlange gestellt
INET_ERROR_NOT_SUPPORTED
Paket nicht IP-Version 6
INET_ERROR_BAD_ARGS
message ist ein NULL-Zeiger