nl::Weave::Profiles::WeaveTunnel::WeaveTunnelControl

Zusammenfassung

Konstruktoren und Zerstörer

WeaveTunnelControl(void)

Öffentliche Typen

TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus) typedef
void(*
Funktionszeiger auf einen Handler, der von einer höheren Ebene so festgelegt wurde, dass er bei Empfang einer StatusReport-Nachricht als Antwort auf eine gesendete Tunnelsteuerungsnachricht reagiert.

Öffentliche Attribute

OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t
Das Zeitlimit(in Sekunden) für Antworten zur Steuerung von Nachrichten.
mShortcutTunnelAdvInterval
uint16_t
Intervall in Sekunden für regelmäßige Kurzmitteilungs-Tunnel-Advertisings.

Öffentliche Funktionen

Close(void)
Schließen Sie WeaveTunnelControl, indem Sie alle ausstehenden Exchange-Kontexte schließen und Mitglieder zurücksetzen.
DisableShortcutTunneling(void)
void
Verknüpfungstunneling deaktivieren, um Werbung vom Border Gateway oder Mobile-Client zu senden und Werbung von Verknüpfungstunnel-Gegenstücken zu überwachen
EnableShortcutTunneling(void)
void
Aktivieren Sie Shortcut-Tunneling. Senden Sie dazu Werbung vom Border-Gateway oder Mobile-Client und hören Sie Werbung von entsprechenden Tunneln.
Init(WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd)
Initialisieren Sie WeaveTunnelControl, um relevante Mitglieder wie den Weave Tunnel Agent und Callbacks festzulegen.
IsPeerInShortcutTunnelCache(uint64_t peerId)
bool
Prüfen Sie, ob der Peer im Tunnelverknüpfungscache zum lokalen Senden vorhanden ist.
Reconnect(WeaveTunnelConnectionMgr *conMgr)
Stellen Sie die Verbindung zum Peer-Knoten wieder her.
SendBorderRouterAdvertise(void)
Eine Nachricht an einen Border-Router senden, die seine Stoff-ID bewirbt.
SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
Nachricht über die Tunnelverknüpfung senden.
SendMobileClientAdvertise(void)
Eine Werbenachricht für einen mobilen Client senden, die die Knoten-ID bewirbt.
SendTunnelClose(WeaveTunnelConnectionMgr *conMgr)
Senden Sie eine Steuernachricht zum Schließen des Tunnels an den Peer-Knoten mit einer Reihe von Tunnelrouten.
SendTunnelOpen(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Senden Sie eine Steuernachricht zum Öffnen des Tunnels an den Peer-Knoten mit einer Reihe von Tunnelrouten.
SendTunnelRouteUpdate(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Senden Sie eine Steuernachricht für das Update der Tunnelroute an den Peer-Knoten mit einer Reihe von Tunnelrouten.

Öffentliche statische Funktionen

HandleShortcutTunnelAdvertiseMessage(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
void
Mit WeaveMessageLayer registrierte Funktion zum Überwachen von Werbung durch Shortcut-Tunnel und zum Aktualisieren des Cache.

Öffentliche Typen

TunnelStatusRcvdFunct

void(* TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus)

Funktionszeiger auf einen Handler, der von einer höheren Ebene so festgelegt wurde, dass er bei Empfang einer StatusReport-Nachricht als Antwort auf eine gesendete Tunnelsteuerungsnachricht reagiert.

Details
Parameter
[in] tType
Der Tunneltyp, z.B. Primäre Zahlungsmethode oder Sicherung.
[in] tunStatus
Ein Verweis auf die StatusReport-Nachricht der Tunnelsteuerung.

Öffentliche Attribute

OnTunStatusRcvd

TunnelStatusRcvdFunct OnTunStatusRcvd

mCtrlResponseTimeout

uint16_t mCtrlResponseTimeout

Das Zeitlimit(in Sekunden) für Antworten zur Steuerung von Nachrichten.

mShortcutTunnelAdvInterval

uint16_t mShortcutTunnelAdvInterval

Intervall in Sekunden für regelmäßige Kurzmitteilungs-Tunnel-Advertisings.

Öffentliche Funktionen

Schließen

WEAVE_ERROR Close(
  void
)

Schließen Sie WeaveTunnelControl, indem Sie alle ausstehenden Exchange-Kontexte schließen und Mitglieder zurücksetzen.

Details
Rückgabe
WEAVE_NO_ERROR

DisableShortcutTunneling

void DisableShortcutTunneling(
  void
)

Verknüpfungstunneling deaktivieren, um Werbung vom Border Gateway oder Mobile-Client zu senden und Werbung von Verknüpfungstunnel-Gegenstücken zu überwachen

EnableShortcutTunneling

void EnableShortcutTunneling(
  void
)

Aktivieren Sie Shortcut-Tunneling. Senden Sie dazu Werbung vom Border-Gateway oder Mobile-Client und hören Sie Werbung von entsprechenden Tunneln.

Init

WEAVE_ERROR Init(
  WeaveTunnelAgent *tunAgent,
  TunnelStatusRcvdFunct statusRcvd
)

Initialisieren Sie WeaveTunnelControl, um relevante Mitglieder wie den Weave Tunnel Agent und Callbacks festzulegen.

Details
Parameter
[in] tunAgent
Ein Zeiger auf das Objekt WeaveTunnelAgent.
[in] statusRcvd
Ein Zeiger auf einen Callback für den StatusRcvd-Handler.
Rückgabe
WEAVE_NO_ERROR

IsPeerInShortcutTunnelCache

bool IsPeerInShortcutTunnelCache(
  uint64_t peerId
)

Prüfen Sie, ob der Peer im Tunnelverknüpfungscache zum lokalen Senden vorhanden ist.

Noch einmal verbinden

WEAVE_ERROR Reconnect(
  WeaveTunnelConnectionMgr *conMgr
)

Stellen Sie die Verbindung zum Peer-Knoten wieder her.

SendBorderRouterAdvertise

WEAVE_ERROR SendBorderRouterAdvertise(
  void
)

Eine Nachricht an einen Border-Router senden, die seine Stoff-ID bewirbt.

SendMessageOverTunnelShortcut

WEAVE_ERROR SendMessageOverTunnelShortcut(
  uint64_t peerId,
  WeaveMessageInfo *msgHdr,
  PacketBuffer *msg
)

Nachricht über die Tunnelverknüpfung senden.

SendMobileClientAdvertise

WEAVE_ERROR SendMobileClientAdvertise(
  void
)

Eine Werbenachricht für einen mobilen Client senden, die die Knoten-ID bewirbt.

SendTunnelClose

WEAVE_ERROR SendTunnelClose(
  WeaveTunnelConnectionMgr *conMgr
)

Senden Sie eine Steuernachricht zum Schließen des Tunnels an den Peer-Knoten mit einer Reihe von Tunnelrouten.

Senden Sie eine Steuernachricht zum Schließen des Tunnels an den Peer-Knoten.

Details
Parameter
[in] conMgr
Ein Zeiger auf das Objekt WeaveTunnelConnectionMgr.
Rückgabe
WEAVE_ERROR WEAVE_NO_ERROR bei Erfolg, andernfalls Fehler.

SendTunnelOpen

WEAVE_ERROR SendTunnelOpen(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Senden Sie eine Steuernachricht zum Öffnen des Tunnels an den Peer-Knoten mit einer Reihe von Tunnelrouten.

Details
Parameter
[in] conMgr
Ein Zeiger auf das Objekt WeaveTunnelConnectionMgr.
[in] tunRoutes
Liste der Präfixrouten, die der Routentabelle hinzugefügt werden sollen.
Rückgabe
WEAVE_ERROR WEAVE_NO_ERROR bei Erfolg, andernfalls Fehler.

SendTunnelRouteUpdate

WEAVE_ERROR SendTunnelRouteUpdate(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Senden Sie eine Steuernachricht für das Update der Tunnelroute an den Peer-Knoten mit einer Reihe von Tunnelrouten.

Details
Parameter
[in] conMgr
Ein Zeiger auf das Objekt WeaveTunnelConnectionMgr.
[in] tunRoutes
Liste der Präfixrouten, die der Routentabelle hinzugefügt werden sollen.
Rückgabe
WEAVE_ERROR WEAVE_NO_ERROR bei Erfolg, andernfalls Fehler.

WeaveTunnelControl

 WeaveTunnelControl(
  void
)

Öffentliche statische Funktionen

HandleShortcutTunnelAdvertiseMessage

void HandleShortcutTunnelAdvertiseMessage(
  ExchangeContext *ec,
  const IPPacketInfo *pktInfo,
  const WeaveMessageInfo *msgInfo,
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *payload
)

Mit WeaveMessageLayer registrierte Funktion zum Überwachen von Werbung durch Shortcut-Tunnel und zum Aktualisieren des Cache.